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

Angular variable initialized using ng-init is always undefined

我正在学习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" 数量。我的代码有什么问题?我可以不这样初始化吗?

模板中的 ng-init 在应用程序初始化后被调用。如果您将 {{ quantity }} 或 {{ cost }} 放入您的模板中,您会看到您的值按预期显示。

请问,为什么要使用ng-init?如果您想对数量和成本的值进行硬编码,最好在控制器中进行。为此,值得查看 angular 文档,它建议采用类似的方法

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