我熟悉angularjs中的摘要周期以及它们是如何工作的。我的问题是,我们可以从angularjs中删除摘要周期,仍然可以构建角度app;如果是,我们如何删除它们。我也想知道如何延迟消化周期。
答案 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);
}