0

我想在渲染视图之前设置一些变量。具体来说,我想创建半随机的类名和 id:

buttonBarId: ""
inputClass: ""

random: 0

willInsertElement: ->
  @set('random', Math.floor(Math.random() * (999999 - 100000 + 1)) + 100000)
  @set('buttonBarId', 'wmd-button-bar-' + @get('random'))
  @set('inputClass', 'wmd-input-' + @get('random'))

我希望这样willInsertElement可以解决问题,但不幸的是,当它被调用时,视图已经被创建(只是还没有被放置在 DOM 中)。有没有办法在创建视图之前设置这些变量?

4

1 回答 1

2

如果您想在视图创建之前(或实际时间)运行它,而不是渲染,您应该覆盖此视图的“init”方法。当从视图类实例化视图时将调用它。哦,别忘了在这个 init 方法的某个地方运行 this._super() 。否则什么都行不通。

于 2013-11-12T09:44:38.637 回答