我只是想了解背后Backbone.Marionette的关于UI元素视图的决定。 当现有的DOM元素,像这样的实例化Marionette.View:
view = new Marionette.ItemView({
el: "#element",
ui : {
whatever : "#whatever"
}
});
我能够访问view.$el
,里面的jQuery选择view.initialize
,到目前为止,一切顺利。 然而,当我尝试访问view.ui.whatever
,我只能访问到选择,即字符串“#whatever”而不是实际的$("#whatever")
jQuery选择。
这样做的原因是因为Marionette.View.bindUIElements()
只要求render
和之前没有initialize
。
我想知道,如果你认为这种行为是逻辑,为什么?
我只在视图中的连接到现有的情况下,询问el
,如果视图用模板创建的,我不明白为什么绑定的render()