如何从angularjs中删除摘要循环?

时间:2015-08-04 04:37:08

标签: javascript angularjs

我熟悉angularjs中的摘要周期以及它们是如何工作的。我的问题是,我们可以从angularjs中删除摘要周期,仍然可以构建角度app;如果是,我们如何删除它们。我也想知道如何延迟消化周期。

2 个答案:

答案 0 :(得分:1)

不,摘要周期是AngularJS的基本部分,它使它工作(双向数据绑定和所有这些。)为什么使用AngularJS然后如果你想将它分解为不再是AngularJS的东西?

摘要周期只是创建“观察者”抽象,以允许数据在视图和数据层之间来回流动。

如果您不想这样,那么我建议不要使用AngularJS,因为您将使用膨胀代码没有任何好处。

答案 1 :(得分:0)

其他用户已经提供了简短的答案,不是。

然而,我们可以控制何时查看我们的数据以及何时不查看数据。

例如,默认情况下,即时数据绑定如下所示:

<input type='text' ng-model='data'>
{{data}}

如果我们想延迟它,假设0.5秒怎么办? 我们可以分离视图模型,并在适当的时候为其赋值。

<input type='text' ng-model='data'>
{{viewData}}

$scope.$watch(function(){
    $scope.data;
}, function(){
    $timeout(function(){
        $scope.viewData = angular.copy($scope.data);
    }, 500);
});

或仅在单击按钮时显示。

<input type='text' ng-model='data'>
<button ng-click='click()'>Click me!</button>
{{viewData}}

$scope.click = function() {
    $scope.viewData = angular.copy($scope.data);
}