为什么我们用无延迟参数调用$timeout



我正在尝试读取一些angularjs代码有一点是在没有延迟参数的情况下调用$timeout。

dataBinding: () => {
            this.$timeout(() => {
                this.selectedRow = null;
            });
        },

这样做的目的是什么?

在这种情况下(angular.js),这是一种变通方法-当您只想将操作推迟到下一个angular摘要周期时(并确保在当前摘要周期中不会发生这种情况)。

如果是这种情况,您最好使用$scope.$evalAsync()。看见http://www.bennadel.com/blog/2605-scope-evalasync-vs-timeout-in-angularjs.htm

如果不设置延迟值,则将其设置为0。

但实际的延迟可能更长;看到这个

您可以理解为什么将延迟值设置为0是有用的吗?

相关内容

最新更新