javascript - angularjs,范围未跨函数更新 - 使用 ngTouch

标签 javascript angularjs angularjs-scope angularjs-ng-touch

我有一个带有这样的 Controller :

$scope.myVar = 0;

  $scope.back = function () {
    $scope.myVar--;
  };

  $scope.next = function () {
    $scope.myVar++;
  };

如果 next() (使用 ngClick)被调用 3 次,我们得到:

//1

//2

//3

但是如果调用 back() (使用 ngSwipeLeft)它会返回

//-1

当我明显期待

//2

我在这里缺少什么?

更新:包括 ngTouch 详细信息 - 这似乎是问题所在.. ngTouch 已包括在内。

当我观察 myVar 值时 - 它就像存在两次 - 一次是 ngSwipeLeft 调用,另一次是 ngClick 调用

最佳答案

你的代码片段对我来说看起来不错。您需要提供更多代码,错误可能在其他地方。请看下面的代码。

<!doctype html>
<html ng-app="myapp">
  <head>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.12/angular.min.js"></script>
      <script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.2.20/angular-touch.min.js"></script>
    <script>
        var app = angular.module('myapp',['ngTouch']);
        var controller = app.controller('mycontroller', ['$scope',function($scope){
              $scope.myVar = 0;

              $scope.back = function () {
                $scope.myVar--;
              };

              $scope.next = function () {
                $scope.myVar++;
              };
        }]);
    </script>
  </head>
  <body ng-controller="mycontroller">
    <div>          
      <h1>MyVar: {{myVar}}!</h1>
      <input type="button" value="back" ng-click="back()"/>
      <input type="button" value="next" ng-click="next()"/>
    </div>
  </body>
</html>

关于javascript - angularjs,范围未跨函数更新 - 使用 ngTouch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26559178/

相关文章:

javascript - 使用 jQuery/Javascript 处理 HTML 元素组?

javascript - 如何在 firebase 中将子文件夹写入一次?

javascript - 在固定大小的 div 中显示未知大小的图像

angularjs - Angular 指令。我可以取消优先级较低的指令吗

angularjs - Chrome 中的 Angular Material Datepicker 打开位置错误

angularjs - 为什么应用程序不在 angular js 中显示第一个 View

javascript - 使用正则表达式检查是否存在新行

javascript - Angular Directive(指令),将点击事件绑定(bind)到外部元素不起作用

javascript - ng-model 不会在文本过滤器的单个按键上重新计算数组长度

javascript - 将内部元素的显示设置为 'none' 后元素 scrollHeight 不更新?