我正在制作一个应用程序,在画布上绘制不同的矩形,我正在尝试使用 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
}
});
我也收集了这个 Box 模型:
BoxSet = Backbone.Collection.extend({
model: Box
});
我的想法是有一个视图,我可以使用 Box 模型中的 drawBox 方法将 BoxSet 集合中的每个 Box 模型放在画布上,但到目前为止,所有教程和示例都处理简单的文本模板,我无法想象出如何实现这一点。
关于如何使用 Backbone 视图完成此操作的任何想法?
提前致谢。