【问题标题】:Angular typescript async角打字稿异步
【发布时间】:2019-03-05 05:07:39
【问题描述】:

这可能是一个常见/直截了当的问题,但很难找到解决方案。我在 typescript angular 中的异步调用不起作用。选择下拉列表后,我想将焦点设置为文本框(在下拉列表中)。我正在使用元素 id 设置焦点。问题是 50% 的时间它会起作用,但它也会经常说“找不到未定义的元素”(在完全相同的场景中),因为在打开下拉菜单之前该元素尚未放入 html (我猜大约一半的时间 html 会在打字稿执行之前生成,一半不会)。

async delay(ms: number) {return new Promise( resolve => setTimeout(resolve, ms) );}

async setFocus() { await delay(30000); log; getElement; focus(); }

日志会立即打印,因此 await 一定不能正常工作。为格式化道歉。我已阅读有关此主题的多篇文章,并认为这应该有效,但事实并非如此。

【问题讨论】:

    标签: angular typescript async-await


    【解决方案1】:

    写了这个,想把它贴出来,即使是我最近想出来的,但觉得很有趣。更正了 this.delay,因为显然延迟指的是别的东西。我可能很快会发布的新问题:原来它也延迟了整个盒子的打开,所以问题没有解决。

    【讨论】:

      猜你喜欢
      • 2021-07-07
      • 1970-01-01
      • 2019-10-16
      • 2020-03-01
      • 2022-11-17
      • 2021-04-06
      • 1970-01-01
      • 2018-05-10
      • 2019-03-25
      相关资源
      最近更新 更多