ng-init和ng-bind之间有什么区别?

3
以下是使用ng-init的代码:
<!DOCTYPE html>
<html>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<body>

<div ng-app="" ng-init="names=['Jani','Hege','Kai']">
  <p>Looping with ng-repeat:</p>
  <ul>
    <li ng-repeat="x in names">
      {{ x }}
    </li>
  </ul>
</div>

</body>
</html>

以下是使用ng-bind的代码:
<!DOCTYPE html>
<html>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.min.js"></script>
<body>

<div ng-app="" ng-bind="names=['Jani','Hege','Kai']">
  <p>Looping with ng-repeat:</p>
  <ul>
    <li ng-repeat="x in names">
      {{ x }}
    </li>
  </ul>
</div>

</body>
</html>

两者都会输出相同的内容,只是格式不同。

这里到底发生了什么?

请帮忙!


https://docs.angularjs.org/api/ng/directive/ngInit - mujuonly
https://docs.angularjs.org/api/ng/directive/ngBind - mujuonly
2个回答

3

ng-init 的作用是在模板中初始化属性。

ng-bind 的作用是将特定 HTML 元素的文本内容替换为给定表达式的值。

但是你应该在控制器中初始化变量并使用 {{variable}},不要使用 ng-init 或 ng-bind。


非常感谢您的帮助。 - Pritish

1

ng-bindng-init有非常不同的用途。

ng-bind用于将内部文本分配给元素,例如:

<div ng-bind="'hi'"><div>

结果是:
<div>hi</div>

ng-init指令只执行一次,主要用于声明变量。所以在您的情况下,您应该使用ng-init


非常感谢您的帮助。 - Pritish

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接