gpt4 book ai didi

javascript - 如何覆盖现有的 Backbone 模型方法保持其他方法相同

转载 作者:行者123 更新时间:2023-11-29 21:14:27 26 4
gpt4 key购买 nike

我有一个 Backbone 模型,我无权编辑。所以我想修改它的方法,这样其他方法的功能就不会受到影响。

ShoppingDetail = Backbone.Model.extend({
className: 'CartID',
fetch: function() {},
checkForChanges: function() {},
newCoupon: function() {},
saveAndallow: function() {}
});

shoppingDetailModel = new ShoppingDetail();
shoppingCartView = new ShoppingCartView({
model: shoppingDetailModel
});

所以我想覆盖模型的 saveAndallow 方法。我怎样才能在不影响该模型的其他方法的情况下做到这一点

最佳答案

为什么不创建一个新模型来扩展您的 ShoppingDetail 模型?

ShoppingDetail = Backbone.Model.extend({ 
className: 'CartID',
fetch: function() {},
checkForChanges : function() {},
newCoupon: function(){},
saveAndallow: function(){}
});

NewShoppingDetail = ShoppingDetail.extend({
saveAndallow: function(){};
});

shoppingDetailModel = new NewShoppingDetail();
shoppingCartView = new ShoppingCartView({
model : shoppingDetailModel
});

所以现在,当你调用任何方法时,它会首先检查它是否在 NewShoppingDetail 中可用,如果不可用,然后它会检查 ShoppingDetail。

关于javascript - 如何覆盖现有的 Backbone 模型方法保持其他方法相同,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40042165/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com