我最近开始玩Backbone.js。我想将自定义验证机制应用于我的模型类,我决定使用mixin类。现在问题是将mixin附加到Backbone.Model
类是一个好主意,如下所示
_.extend(Backbone.Model.prototype, MyApp.ValidationMixin)
或者我可以创建所有应用程序模型扩展的基本模型AppModel
,并将mixin附加到基本模型。
var AppModel = Backbone.Model.extend({});
_.extend(AppModel.prototype, MyApp.ValidationMixin)
如果我采用第一种方法,是否会遇到任何问题?
答案 0 :(得分:3)
一般来说,第一种方法适用于这种特定情况(将验证混合添加到Backbone模型中),但您的验证Mixin可能会被其他图书馆删除(有时很难去掉#39) ;挑选并选择其他Backbone库的功能。
第二种方法更安全,是通常推荐的方法,可以在各种Backbone的应用程序样板中看到。
两者在技术上都是相同的,只要你生活在你自己的小应用程序泡泡中即可。