我有一个包含在其他视图中的 ember 视图,看起来有点像这样:
App.view = Em.View.extend
buttons: [
Em.Object.create
label: 'one'
Em.Object.create
label: 'two'
]
当视图被销毁时,按钮数组不会被销毁,因为它显然不知道这样做。
每次通过覆盖destroy方法来删除这个数组的最佳选择是什么?
我有一个包含在其他视图中的 ember 视图,看起来有点像这样:
App.view = Em.View.extend
buttons: [
Em.Object.create
label: 'one'
Em.Object.create
label: 'two'
]
当视图被销毁时,按钮数组不会被销毁,因为它显然不知道这样做。
每次通过覆盖destroy方法来删除这个数组的最佳选择是什么?
我认为数组没有被破坏,因为它在所有未来的 App.view 实例之间共享,(参见http://codebrief.com/2012/03/eight-ember-dot-js-gotchas-with-workarounds/,第 6 章)
虽然我不是 100% 确定,但如果你在 init() 中定义按钮数组,我认为它将被删除以及视图实例被破坏。
App.View = Em.View.extend
buttons: null
init ->
@buttons = [
Em.Object.create
label: 'one'
Em.Object.create
label: 'two'
]
顺便说一句,建议大写视图类。