gpt4 book ai didi

ember.js - 从封闭的 ArrayController 中删除对象的惯用方法

转载 作者:行者123 更新时间:2023-12-01 10:52:33 27 4
gpt4 key购买 nike

我有一个管理一组对象的 ArrayController。我在上面定义了一个 itemController,这样每个单独的对象都由另一个 ObjectController 管理:

App.IndexController = Ember.ArrayController.extend({
itemController: "sampleModel"
});

在这个 ObjectController 中,我有一个 delete 操作,目的是使用“父”ArrayController 从封闭数组中删除对象:

App.SampleModelController = Ember.ObjectController.extend({
delete: function() {
this.get("target.content").removeObject(this.get("content"));
}
});

我不想拥有全局对象存储。我目前正在使用 target 属性来实现这种行为。这是惯用的 ember 方法吗?

可以找到完整的例子here .

最佳答案

您可以将删除功能移至 ArrayController。这种方式很有意义,因为数组 Controller 正在管理集合。它的工作方式,但它似乎不正确,因为您的对象正在管理它所属的数组,这似乎是一种笨拙的编写方式。

App.IndexController = Ember.ArrayController.extend({
itemController: "sampleModel",

delete: function(object) {
this.get('content').removeObject(object)
}
});

App.SampleModelController = Ember.ObjectController.extend({});

jsfiddle

关于ember.js - 从封闭的 ArrayController 中删除对象的惯用方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17234572/

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