小编sti*_*man的帖子

真正在Backbone.js中静默更改模型属性?

有没有办法可以在不触发更改事件的情况下更改模型上的属性?如果您立即传递{"silent":true},则下次更改属性时,将触发静默更改事件.如果没有触发更改事件,我可以安全地更改属性吗?

来自变化,Backbone 0.9.2:

// Silent changes become pending changes.
for (var attr in this._silent) this._pending[attr] = true;

// Silent changes are triggered.
var changes = _.extend({}, options.changes, this._silent);
this._silent = {};
for (var attr in changes) {
    this.trigger('change:' + attr, this, this.get(attr), options);
Run Code Online (Sandbox Code Playgroud)

backbone.js

4
推荐指数
2
解决办法
7226
查看次数

在backbone.js中扩展视图时添加事件处理程序?

我是一个backbone.js n00b,我无法理解如何扩展视图.我有一个基本的"项目"模型和视图.我想将模型和视图扩展为"specificItem".有没有办法在扩展视图中添加事件而不是全部替换它们?

物品查看:

var itemView = Backbone.View.extend({
   ...
   events: {
      "click" : "foo"
      , "dblclick div": "bar"
   }
   ...
});
Run Code Online (Sandbox Code Playgroud)

具体项目查看:

var specificItemView = itemView.extend({
   ...
   // I'd like this to simply add an event handler not replace the ones defined above
   events: {
      "contextmenu" : "baz"
   }
   ...
});
Run Code Online (Sandbox Code Playgroud)

是否支持以这种方式扩展视图,或者我们只能对模型进行扩展?

backbone.js

3
推荐指数
1
解决办法
1710
查看次数

为什么第四个嵌套值的访问速度比第五个慢?

我正在构建一个jsperf来说明访问嵌套对象成员所花费的时间,我发现了这个奇怪的现象.由于某种原因,第四个嵌套对象成员的测试运行速度比第五个慢得多.我在Chrome和Firefox中尝试了这个,并得到了相同的结果.

在此输入图像描述

有什么想法会发生这种情况吗?

javascript performance

3
推荐指数
1
解决办法
52
查看次数

在backbone.js中封装

这可能是一般的javascript或jQuery问题 - 我正在使用backbone.js,我想在一个可以由子类使用的类中使用私有方法.这可能吗?

var fooView = Backbone.View.extend({
  initialize: function () {
    this._privateFunc();
  },
  _privateFunc: function () {
  ...
  }
});

var subFooView = fooView.extend({
  initialize: function () {
    this.coolFunc();
    this._privateFunc();
  },
  coolFunc: function () {
  ...
  }
});
Run Code Online (Sandbox Code Playgroud)

但是_privateFunc并没有暴露给外界.我对javascript中的封装很新,所以如果有明显的答案,请原谅我.:d

jquery encapsulation backbone.js

1
推荐指数
1
解决办法
1581
查看次数