使用ng-init初始化的角度变量始终未定义

时间:2016-09-26 15:23:51

标签: angularjs angularjs-ng-init ng-init

我正在学习AngularJS。现在我使用ng-init初始化变量。但变量值始终未定义。我的代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Angularjs popup</title>
    <script src="http://localhost:8888/angular/angular-js.min.js"></script>
</head>
<body>
<section ng-app="myApp" ng-controller="MainCtrl" ng-init="quantity=1;cost=5">

</section>
</body>
<script type="text/javascript">
var myApp = angular.module('myApp', []);
myApp.controller('MainCtrl',function($scope){
    alert($scope.quantity)
})
</script>
</html>

当我在代码上面运行时,即使我使用ng-init初始化,也始终警告数量为“undefined”。我的代码出了什么问题?我可以不这样初始化吗?

1 个答案:

答案 0 :(得分:1)

在应用程序初始化后调用模板中的

ng-init。如果您在模板中添加{{quantity}}或{{cost}},则会看到您的值按预期显示。

请问,为什么使用ng-init?如果您想对数值和成本进行硬编码,那么最好在控制器中进行操作。值得研究角度文档,它建议采用类似的方法

https://docs.angularjs.org/api/ng/directive/ngInit