如何将值存储到变量,例如单击角度?我有以下代码,不会将值保存到变量:
HTML:
<div ng-app='app'>
<a ng-controller="MyController" href="#" ng-click="variable = 1">
</a>
{{variable}}
</div>
控制器:
var app = angular.module('app',[]);
app.controller('MyController', function($scope)
{
});
答案 0 :(得分:4)
您的变量绑定{{variable}}
应该在控制器的范围内。因此,将ng-controller
移动到包含变量绑定的元素。
答案 1 :(得分:3)
您需要初始化变量。见http://plnkr.co/edit/dmSNVJ3BGIeaWaddKtZe
<body ng-app="">
<button ng-click="count = 1" ng-init="count='not set'">
Increment
</button>
<span>
count: {{count}}
</span>
</body>
答案 2 :(得分:2)
使用函数设置变量:
HTML:
<div ng-app='app'>
<a ng-controller="MyController" href="#" ng-click="setVariable()">
</a>
{{variable}}
</div>
控制器:
var app = angular.module('app',[]);
app.controller('MyController', function($scope)
{
$scope.setVariable = function() {
$scope.variable = 1;
}
});
答案 3 :(得分:2)
您的语法是正确的,出了什么问题是您将控制器声明放在错误的位置。
您只需将其移至外层,无需ng-init
或功能(但可能是更好的做法):
<div ng-app='app' ng-controller="MyController">
<a href="#" ng-click="variable=1">
click me!
</a>
{{variable}}
</div>