gpt4 book ai didi

javascript - 列出 Backbone 应用程序中模型的实例

转载 作者:行者123 更新时间:2023-12-02 17:56:01 25 4
gpt4 key购买 nike

在我的 Backbone 应用程序中,我有一个模型。如果并非所有实例都属于同一集合,是否有办法在应用程序中获取此模型的所有实例?有些实例可能根本不属于任何集合。

为什么我需要这样做?

我有一个命名空间模型(比如说 Order.Models.Entry)。这就是我正在谈论的实例的模型。有一些集合(例如 Order.Models.Entries)包含 Order.Models.Entry 类型的实例。但是实例只有在被选择(具有特定属性)时才会到达该集合。在被选中之前,这些模型只是……嗯……模型。

更新

显然,我可以将我创建的每个模型加载到某个 allModels 集合中,正如评论中所建议的那样。但问题实际上并不是关于解决方法,而是关于精确查找。我想避免将模型添加到 super 集合的原因是,大多数模型无论如何都会被添加到不同的集合中,我只是想避免仅出于跟踪目的创建虚拟集合。

最佳答案

没有。有几个很好的设计原因说明您不应该这样做。 (封装、不污染全局作用域等...)

如果您仍然希望使用此解决方案,您可以维护一个 Gloabl 列表并将您的 Backbone.Model 插入到此列表中,这是一个快速解决方案:

var allMyModels = [] ;

var MyModel = Backbone.Model.extend({
initialize:function(){
allMyModels.push(this);
// Some more code here
},
// also if you wish you need to remove self on close delete function
});
var x = new MyModel();
var y = new MyModel();

在此代码的末尾,allMyModels 将具有两个模型

关于javascript - 列出 Backbone 应用程序中模型的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20952663/

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