【发布时间】:2012-10-18 04:54:42
【问题描述】:
我是新手,请多多包涵。我正在尝试将一个项目视图添加到另一个项目视图,但嵌套视图项目上的渲染方法返回一个延迟对象。
代码如下:
(function (ns, _, $, Backbone) {
///////////////////////////////////////////////////////////////////////////////////////
// Signup state
///////////////////////////////////////////////////////////////////////////////////////
var SignUp = Backbone.Marionette.ItemView.extend({
template : "#signup-tmpl",
events : {
'click .signup' : 'signup'
},
signup : function () {
console.log('signup clicked');
ns.app.layout.app.show(ns.views.register);
},
onRender : function() {
console.log('On render', this.el);
var user = ns.views.user.render();
// user returns an a deferred object
// so the code below does not work
this.$el.find('#user').html(test.el);
}
});
ns.views.signup = new SignUp();
}(H5, _, $, Backbone));
我做了一些阅读,我发现的解决方法是渲染视图,但在后面抓住它的 el 属性 (Backbone.Marionette nested ItemView either not rendering or rendering "blank" view/template)。问题是“用户”返回了一个延迟对象。
关于这里发生了什么的任何想法?
【问题讨论】: