首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Backbone的模型重置为初始默认值的最简单方法?

问将Backbone的模型重置为初始默认值的最简单方法?
EN

Stack Overflow用户
提问于 2011-07-31 20:24:56
回答 6查看 41.1K关注 0票数 60

我的模型已经有了一个defaults散列。当视图/页面的某些部分被重置时,我希望将模型重置为其原始默认值。

目前,我显式地将每个属性设置为其默认值。有没有什么内置的或者JavaScript/Underscore.js/Backbone.js/jQuery函数可以让我在一条语句中做到这一点?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-07-31 21:54:02

代码语言:javascript
复制
myModel.clear().set(myModel.defaults);
票数 122
EN

Stack Overflow用户

发布于 2016-04-14 06:10:46

我想出了以下方法:

代码语言:javascript
复制
reset: function () {
    this.clear({silent: true});
    this.set(this.defaults);
}

在clear()调用中使用{silent: true}可以确保change事件不会触发;它只会在set()调用时触发。

票数 6
EN

Stack Overflow用户

发布于 2014-07-20 15:30:12

当模型具有非空的初始对象属性时,我会这样做。

首先,将defaults定义为函数

代码语言:javascript
复制
var MyModel = Backbone.Model.extends({

    defaults:function(){

        return {
            AnArrayTypeProp:[]
        };
    }

});

代码语言:javascript
复制
model.clear().set(model.defaults());
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6889457

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档