代码之家  ›  专栏  ›  技术社区  ›  bambaniasz

使typescript中的生命周期钩子异步(角度钩子,离子钩子)

  •  1
  • bambaniasz  · 技术社区  · 7 年前

    我很想使用typescript特性,它是异步/等待的,带有生命周期挂钩。

    这个特性非常方便,但是让生命周期钩子异步可以吗?

    我已经对这种方法进行了多次测试,它按预期工作,但我找不到任何可靠的答案:这是一种良好的做法,恐怕不是。

    举例说明:

    角度:

    async ngOnInit() {
      await someAsyncFunction();
    }
    

    离子:

    async ionViewWillEnter() {
      await someAsyncFunction();
    }
    
    2 回复  |  直到 7 年前
        1
  •  1
  •   bug-a-lot    7 年前

    我不知道“相对较新的”-从2.1开始就有了。

    这个特性确实很方便,但是是否可以使生命周期 异步钩子?

    有几篇文章正在做你正在做的事情(只是google async在等ngOnInit)。没什么能说明用角度来做是不好的。不知道爱奥尼亚。

    但我找不到任何可靠的答案是这是个好的做法 恐怕不是。

    好的做法的问题是他们固执己见。就我个人而言,我认为它使代码可读性更强。你可以退房 https://medium.com/@benlesh/async-await-it-s-good-and-bad-15cf121ade40 看另一个意见,还有更详细的分析。

        2
  •  1
  •   bojdo    7 年前

    根据我的经验,使用带有角度生命周期挂钩的async/await没有问题。据我所知,它也不是一个坏的编程实践。我曾经用 异步 以后不会有任何问题。

    如果您有疑问,也可以查看此线程以了解更多信息: https://github.com/angular/angular/issues/17420

    推荐文章