如何删除Alloy Collection中的所有模型

时间:2018-02-17 01:26:08

标签: appcelerator backbone-collections appcelerator-alloy

在控制器功能中,如何删除Alloy Collection中的所有模型。该集合使用属性同步适配器。我认为骨干重置方法是可行的方法,但我无法使其工作。

1 个答案:

答案 0 :(得分:2)

对我来说,最快捷的方法是在每个型号上运行destroy()。要快速执行此操作,您可以使用下划线(内置):

_.invoke(Alloy.Collections.library.toArray(), 'destroy');

甚至扩展model.js

extendCollection: function(Collection) {
        _.extend(Collection.prototype, {
            // extended functions and properties go here
            dump: function() {
                // get all models
                return this.models;
            },
            clear: function() {
                // remove/destroy all models
                _.invoke(this.toArray(), 'destroy');
            }
        });

        return Collection;
}

并运行Alloy.Collections.library.clear();

专业提示:您始终可以搜索delete all models in backbone之类的内容,并立即使用大部分结果,因为它在后台使用主干。