在ng-init中声明多个值

所以我想知道如何在单个ng-init中声明多个值,而不必创build一些奇怪的哈希,然后我需要总是访问具体。

所以基本上我想

<div ng-init="a = 1, b = 2">{{a}}</div> 

我说我想避免必须这样做

 <div ng-init="unecessary_bs = {a: 1, b: 2}">{{unecessary_bs.a}}</div> 

然而合理的:

 <div ng-init="a = 1, b = 2">{{a}}</div> 

似乎没有工作。

预期的感谢

使用一个函数,方式更具可读性:

 ng-init="init()" 

和:

 $scope.init = function() { $scope.a = 1; $scope.b = 2; } 

或者,如果必须,用分号分隔内联variables:

 ng-init="a = 1; b = 2" 

有时把variables放在一个函数中是不理想的。 例如,你的后端是快递,你正在使用玉来渲染一个文件。

使用Express.js,您可以将本地variables发送到html。 Angular可以接受这些variables

 ng-init="" 

使用“;” 可以有多个variables

 ng-init=" hello='world'; john='doe' " 
  <div ng-app="app"> <div ng-controller="TodoCtrl"> <ul> <li ng-repeat="todo in todos" ng-init='initTodo = init(todo)'> <span class="done-{{todo.done}}">{{todo.text}} | and todo.text via init:{{initTodo}}</span> </li> </ul> </div> 

  var modulse = angular.module("app",[]); modulse.controller("TodoCtrl", function ($scope) { $scope.todos = [ {text:'todo1'}, {text:'todo2'}]; $scope.init = function (todo) { return todo.text; }; }); 

我更喜欢使用对象initvariables来包装:

 <div ng-init="initObject = {initParam: 'initParamValue', anotherOne: 'value'}"></div>