![]() |
1
1
我将尽量简化描述:
回到您的问题:您不知道何时调用setTimeout代码,但理论上它将在订阅之前被调用(javascript引擎比http响应更快)。
如果仅在从http请求获取数据之后才需要初始化某些数据表结构,则应将其放入
|
![]() |
2
1
1) 视情况而定。订阅仅在操作完成时执行代码。所以,当
3) AfterViewInit被多次激发。你可以这样检查
4) 你应该 总是 避免使用settimeout(仅用于调试目的)。 编辑: 恩戈尼尼特(){
} 让我们简单地说一下这段代码:
此代码的输出将是:
但为什么呢?
你可以想象,当你和两个人走在一起:一个懂英语,一个不懂英语。所以,即使你先对一个不懂英语的人说“你好吗”,他也需要时间来理解你说的话并回答你。同时,另一个懂英语的人马上回答你。
例如
希望能解释清楚这一点。 现在让我们继续 ,让我们使用超时:
你不可能知道的。
如果您想知道原因,那么很简单:您确切地知道functionB将在500毫秒后被调用,但是您不知道订阅将花费多少时间来准备。所以如果你很幸运,你的订阅通常需要500毫秒才能完成,你可以尝试重新加载页面几次,有时你会看到
以更好的方式回答你的问题:我真的不知道你为什么要这样写代码,简直不知道。
ngAfterViewInit是一个
|
![]() |
3
0
1 不,setTimeout将只在subscribe作为其上下文外部调用之前调用一次。 2 三。 4 ngOnInit生命周期钩子在DOM更新操作之前触发,不会给出任何错误。ngOnInit生命周期钩子在绑定处理后触发。ngAfterViewInit在视图最初呈现时调用,即在创建组件的视图及其子视图之后调用。 5 应在创建组件的视图及其子视图之后调用ngAfterViewInit(),最重要的是在父级的ngAfterViewInit()之前调用子级的ngAfterViewInit()。 |
![]() |
code-geek · Jquery根据单选按钮选择隐藏或显示文本字段 7 月前 |
![]() |
Alex · 在轻量级中同时解构和不解构变量 7 月前 |
![]() |
Ângelo Rigo · ReactJS映射:如何迭代[关闭] 7 月前 |
![]() |
bairog · 从按属性筛选的对象数组字典中创建值数组 7 月前 |
![]() |
lokiuucx · JS对象属性返回未定义,尽管对象属性应该有值 8 月前 |