iOS设备上的settimeout问题

时间:2016-02-25 02:12:19

标签: angularjs mobile-safari settimeout

以下超时功能在iOS设备上无效。 settimeout功能在iOS设备上不起作用吗? 下面的代码中是否缺少某些内容?

_timeoutService: ng.ITimeoutService



this._timeoutService(1200, true).then(() => {
          //below statement does not have any effect on iOS devices
          // enable my angular material control
          // set some text in an angular material input element
           this.supportEmailCtrlDisabled = false;
        });

我发现了这篇文章https://stackoverflow.com/a/10991974/5252545。看起来像一个类似的问题。但不确定 -  1.如果这解决了我的问题?  2.什么是“绑定”方法?  3.如何用打字稿编写方法?

1 个答案:

答案 0 :(得分:1)

  

//下面的语句对iOS设备没有任何影响

怀疑问题在通话链上更高。该函数可能从外部$apply调用,这意味着then不会触发。

可能的修复

this._timeoutService(1200, true).then(() => {
          //below statement does not have any effect on iOS devices
          // enable my angular material control
          // set some text in an angular material input element
           this.supportEmailCtrlDisabled = false;
           $scope.$apply()
        });