javascript - 模拟点击还是手动设置模型属性?

标签 javascript model-view-controller backbone.js backbone-events

我有一个 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"
});

最佳答案

没关系。 click 方式简短而有趣。因此,如果 View 不会改变(我知道你不能肯定地说),那么 click 方式就可以了。否则,您可能想采用后一种方式。

关于javascript - 模拟点击还是手动设置模型属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11122056/

相关文章:

javascript - 我们可以在 location.reload(true) 之后有代码吗?

javascript - JS函数原型(prototype)断章取义 Node 表达

php - 在 Yii2 中更新用户配置文件时如何管理密码

node.js - Jade 和 Node.js 将 Controller 的值存储在隐藏字段中

php - 将应用程序与应用程序库、共享库、组件等分离

javascript - 如何正确破坏主干 View ?

Javascript - 我从字符串创建了一个 blob,如何取回该字符串?

javascript - 如果 Kendo UI 中的值为 null,则设置占位符

javascript - 删除集合中的模型并触发删除事件-backbone.js

javascript - 同步 Backbone 响应