【发布时间】:2012-08-14 03:14:37
【问题描述】:
试图创建一个从Backbone.Model“继承”但覆盖sync方法的主干“插件”。
这是我目前所拥有的:
Backbone.New_Plugin = {};
Backbone.New_Plugin.Model = Object.create(Backbone.Model);
Backbone.New_Plugin.Model.sync = function(method, model, options){
alert('Body of sync method');
}
方法:Object.create()直接取自Javascript: The Good Parts一书:
Object.create = function(o){
var F = function(){};
F.prototype = o;
return new F();
};
我在尝试使用新模型时遇到错误:
var NewModel = Backbone.New_Plugin.Model.extend({});
// Error occurs inside backbone when this line is executed attempting to create a
// 'Model' instance using the new plugin:
var newModelInstance = new NewModel({_pk: 'primary_key'});
错误出现在Backbone 0.9.2开发版的1392行。函数内部inherits():
我正在尝试以主干库Marionette 创建新版本视图的方式创建一个新插件。看来我误解了应该这样做的方式。
为骨干创建新插件的好方法是什么?
【问题讨论】:
标签: backbone.js javascript javascript-framework marionette