如何存储变量

时间:2015-05-17 13:14:24

标签: angularjs

如何将值存储到变量,例如单击角度?我有以下代码,不会将值保存到变量:

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)
{
});

jsfiddle code

4 个答案:

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

http://jsfiddle.net/ybavzec4/3/