灰烬-上下文组件未重新呈现

时间:2019-03-11 03:27:24

标签: ember.js components rendering helper

最近已从Ember 2.15.0升级到3.7.0,回归的一个方面似乎是,由Ember的哈希和组件帮助器组成的上下文组件不会根据组件属性更新而重新呈现。

在以下组件中:

{{yield (hash
  flow-navigation=(component 'page/page-controls'
    on-prev=(action 'goToPrev')
    steps=linkedSteps
    activeStep=_activeStep
  )
  flow-step=(component _activeStep.path
    steps=linkedSteps
    activeStep=_activeStep
    bucket=bucket

    on-prev=(action 'goToPrev')
    on-next=(action 'goToNext')
    on-complete=(action 'finish')
    on-go-to-index=(action 'goToIndex')
  )
)}}

didUpdate生命周期方法是使用适当的道具调用的,但是它并未反映在UI中。

  didUpdate(){
    console.log('_activeStep', get(this, '_activeStep'));
  },

仅使用component帮助器将其重构为两个组件,UI会按预期进行更新,但是,通过其他方法,我们失去了很多可用的灵活性:


{{component 'page/page-controls'
    on-prev=(action 'goToPrev')
    steps=linkedSteps
    activeStep=_activeStep
}}

{{component _activeStep.path
    steps=linkedSteps
    activeStep=_activeStep
    bucket=bucket
    on-prev=(action 'goToPrev')
    on-next=(action 'goToNext')
    on-complete=(action 'finish')
    on-go-to-index=(action 'goToIndex')
}}

有人知道我在这里哪里出错了吗?

0 个答案:

没有答案