Javascript 如何初始化没有默认值的BackboneJS模型?
我发现自己做了很多这样的事情,例如:Javascript 如何初始化没有默认值的BackboneJS模型?,javascript,backbone.js,Javascript,Backbone.js,我发现自己做了很多这样的事情,例如: var Item = Backbone.Model.extend({ }); var sampleItemCode = 12345; var item = new Item({itemCode: sampleItemCode}); 我想设置的任何属性都没有默认值,但我想让它成为自己的模型。有一个空的主干看起来很奇怪。像这样的模型,所以我想知道是否有一个好的方法来初始化它 最好是这样 var Item = Backbone.Model.extend({
var Item = Backbone.Model.extend({
});
var sampleItemCode = 12345;
var item = new Item({itemCode: sampleItemCode});
我想设置的任何属性都没有默认值,但我想让它成为自己的模型。有一个空的主干看起来很奇怪。像这样的模型,所以我想知道是否有一个好的方法来初始化它 最好是这样
var Item = Backbone.Model.extend({
defaults: {itemCode: -1}
});
collection.push(new Item({name: "Item 56", price: 1500}));
itemCode是项目的明确需求。所以默认它。因此,当您在Item
模型中编写一些函数时,您将始终拥有itemCode,您可以对照它进行检查。当您从服务器获取数据进行收集时,若该项并没有itemCode,或者当您初始化该项时,若您未能设置itemCode,则该项将始终具有默认值
例如,如果要将新项目添加到集合中。你可以这样做
var Item = Backbone.Model.extend({
defaults: {itemCode: -1}
});
collection.push(new Item({name: "Item 56", price: 1500}));
在这里,您不需要每次传递itemCode:-1。默认情况下,当您在服务器上保存时,您可以检查ITEMCODE,如果它是-1,可以将其视为新项目Addio.。
但像你那样拥有它并没有错。当您扩展应用程序时,您肯定会向该模型添加功能。您稍后是否正在使用/检查类
项?为什么不干脆newbackbone.Model({itemCode:12345})代码>?我想为将来可能需要添加到模型中的代码保留结构