Ответ 1
Используйте функцию, более читаемую:
ng-init="init()"
и
$scope.init = function() {
$scope.a = 1;
$scope.b = 2;
}
Или, если нужно, разделите встроенные переменные с помощью двоеточия:
ng-init="a = 1; b = 2"
Итак, мне интересно, как я могу объявить несколько значений внутри одного ng-init, не создавая какой-то странный хэш, тогда мне нужно всегда иметь доступ к конкретному.
так что в основном я хотел бы
<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;
}
Или, если нужно, разделите встроенные переменные с помощью двоеточия:
ng-init="a = 1; b = 2"
Иногда он не идеален, чтобы поместить переменные в функцию. Например, ваш бэкэнд в экспресс, и вы делаете файл с использованием нефрита.
С помощью Express.js вы можете отправлять локальные переменные в html. Angular может принимать эти переменные с помощью
ng-init=""
Использование ";" можно иметь несколько переменных
Пример
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; };
});
Я предпочитаю обертку с переменной объекта init:
<div ng-init="initObject = {initParam: 'initParamValue', anotherOne: 'value'}"></div>