【发布时间】:2012-06-20 14:43:23
【问题描述】:
我有一个 Backbone.js 应用程序,它允许用户基于大型数据集创建图表。有几个选项提供给用户以允许图形定制。用户可以单击的一些选项在模型上设置多个属性。
有时我们必须通过从其他应用程序加载或导入图形来以编程方式创建其中一些图形。我不确定是触发点击事件来设置这些属性还是直接设置模型属性。一方面,触发点击事件是 DRY,但我不确定这是否有效/可读或违反 MVC。
模拟点击以设置模型属性是不好的做法吗?还是应该手动设置模型的属性?
代码: 查看
...
events: {
"click .defaultGraph": "setDefaultGraph"
}
, setDefaultGraph: function () {
this.model.set({
"type": "bar"
, "otherAttribute": "foo"
, "anotherAttribute": "baz"
});
}
...
我对默认图表的编程重构
this.$(".defaultGraph").click();
或
this.model.set({
"type": "bar"
, "otherAttribute": "foo"
, "anotherAttribute": "baz"
});
【问题讨论】:
-
还有第三种选择:手动拨打
setDefaultGraph。
标签: javascript model-view-controller backbone.js backbone-events