javascript - tutorial - {{ angularjs




Dichiara più valori in ng-init (3)

A volte non è l'ideale per mettere le variabili in una funzione. Ad esempio il tuo back-end è espresso e stai riproducendo un file usando jade.

Con Express.js puoi inviare variabili locali all'html. Angolare può accettare queste variabili con

ng-init=""

Utilizzando ";" uno può avere più variabili

Esempio

ng-init=" hello='world'; john='doe' "  

Quindi mi chiedo come posso dichiarare più valori all'interno di un singolo ng-init, senza dover creare qualche strano hash, che poi devo sempre accedere in modo specifico.

quindi fondamentalmente mi piacerebbe

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

e sto dicendo che vorrei evitare di doverlo fare

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

Comunque il ragionevole:

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

non sembra funzionare.

Grazie anticipati


Preferisco il wrap con la variabile object init:

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

 <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>

E

  var modulse = angular.module("app",[]);

  modulse.controller("TodoCtrl", function ($scope)  {

            $scope.todos = [ {text:'todo1'}, {text:'todo2'}]; 

            $scope.init = function (todo) {  return todo.text; };

  });




angularjs