Ember如何决定何时在内部重新渲染组件?

时间:2019-01-23 04:18:42

标签: ember.js ember-data

由于某种原因,我们的项目正在didRender函数中设置组件的props,这将触发另一个基于Ember组件生命周期的重新渲染。但这并没有陷入无限循环,除非先前的prop和new prop都是空数组。我可以知道为什么吗?灰烬如何决定何时在引擎盖下重新渲染组件?

someComponent.hbs

{{someComponent
    someProps=DS.attr() // THIS IS AN ARRAY
 }}

someComponent.js

didRender() {
    const newProps = ['newValue'];
    this.set('someProps', newProps)
}

因此,当render -> didRender -> updateProps -> rerender -> didRender -> stop的先前值或当前值都不为空时,以上示例将作为例外(someProps使用。但是,someProps的先前值和当前值都为空数组时,将发生无限循环。

任何建议将不胜感激!谢谢!

0 个答案:

没有答案