我正在开发一个应用程序,在画布上绘制不同的矩形,我正在尝试使用Backbone完成。我有一个名为box的模型:
Box = Backbone.Model.extend({
defaults: {
x: 0,
y: 0,
w: 1,
h: 1,
color: "#FF9000",
linewidth: 3,
id: 0,
},
drawBox: function(ctx) {
ctx.fillStyle = "#FF9000";
ctx.globalAlpha = 0.1;
ctx.fillRect(this.get("x"), this.get("y"), this.get("w"), this.get("h")); //transparent box in the back
ctx.globalAlpha = 1;
ctx.strokeStyle = this.get("color");
ctx.lineWidth = this.get("linewidth");
ctx.strokeRect(this.get("x"), this.get("y"), this.get("w"), this.get("h")); //rectangle on top
}
});
我也有一个关于盒子模型的收藏:
BoxSet = Backbone.Collection.extend({
model: Box
});
我想要创建一个视图,在画布上使用Box模型的drawBox方法放置BoxSet集合中的每个Box模型,但目前所有的教程和示例都是处理简单的文本模板,我无法弄清如何完成这个操作。有没有任何使用Backbone视图的想法?提前感谢您。
add
和remove
事件也可以,参见 http://jsfiddle.net/JB9yg/2/ 或许绑定时缺少了this
? - nikoshr