我正在尝试将2个模型传递给视图,但它似乎无法正常工作.这是我的例子:http://jsfiddle.net/kahhor/jp4B6/14/你可以看到第二个警告显示未定义...
可能是我有错误的做法.我要做的是:在View1绑定事件'change'中Model1...通过单击按钮View2,调用函数,Model1其中更改值,并自动呈现View1,因为它被绑定以更改事件.
但是不要忘记它View2也有它自己Model2,我在视图之外创建并且传递它new View2({model:Model2});.
起初看起来可能很混乱,但我认为骨干可以做到这一点很简单.我只是不知道该怎么做:)
谢谢,
我试图在单个视图中使用两个模型,因此模板但在尝试此问题中显示的示例后:Backbone.js:组合多个模型的复杂视图我遇到了一些错误.
首先,如果我尝试使用视图模型将两个模型组合如下:
var model = new Backbone.Model();
model.set({ image: image, person: person });
var view = new Project.Views.Images.ShowView({ model: model });
Run Code Online (Sandbox Code Playgroud)
我无法访问模板中的任何内容,每个字段都是空的,或者某些字段是函数的字符串表示形式.这是我的模板:
<img width="<%= image.width %>" height="<%= image.height %>" alt="<%= image.message %>" src="<%= image.url %>" />
<p><%= image.message %></p>
<h4>by <%= person.name %></h4>
Run Code Online (Sandbox Code Playgroud)
这是模板生成的输出:
<img width="" height="" alt="" src="function () {
var base = getUrl(this.collection) || this.urlRoot || urlError();
if (this.isNew()) return base;
return base + (base.charAt(base.length - 1) == '/' ? '' : '/') + encodeURIComponent(this.id);
}"> …Run Code Online (Sandbox Code Playgroud)