单击var的更改值

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单击var的更改值相关的知识,希望对你有一定的参考价值。

我正在尝试设置ng-click以修改控制器内的var。

我试图设置ng-click来定位变量。

<div class="Button" ng-click="mar = 'test-2';">

在controller.js里面,我有这个

eventsApp.controller('EventController', function EventController($scope) {

    //variables
    var mar = 'test-1';

}

所以我希望将var变为'test-2';但是,我的html页面只是一直显示test-1。是否存在动态更改var mar的指令或方法?

我不想设置$ scope.mar ='test-1'并操纵它。我怎样才能做到这一点?谢谢。

答案

你应该在$scope上声明它并且你有一个错字

eventsApp.controller('EventController', function EventController($scope) {

    //variables
    $scope.mark = 'test-1';

}

编辑

如果你不想使用$scope,你必须将this分配给控制器内的变量。这是一个小例子。

var app = angular.module('app', []);

app.controller('EventController', function ($scope) {

    //variables
    var vm = this;
    vm.mar = 'test-1';

});
<div ng-app="app" ng-controller="EventController as ctrl">
  <button class="Button" ng-click="ctrl.mar = 'test-2';">
    Click me!
  </button>
  <p>{{ctrl.mar}}</p>
</div>

如果要在控制器上的函数内使用变量,只需使用$scope.marvm.mar

以上是关于单击var的更改值的主要内容,如果未能解决你的问题,请参考以下文章

更改片段内布局的按钮

AlertDialog 更改片段中的背景颜色 [重复]

通过按钮更改 viewpager 片段 Click

通过底部导航栏更改片段时恢复片段状态

kotlin-从一个片段更改多个片段的小数位

从片段中获取意图值后,我如何在 recyclerview 项目中实现单击