gpt4 book ai didi

javascript - Ember.js 无法设置 ArrayController 的内容

转载 作者:行者123 更新时间:2023-11-30 12:58:26 27 4
gpt4 key购买 nike

假设我有一个ArrayController:

CellarRails.SearchController = Ember.ArrayController.extend({
content: []
});

和一个SearchRoute:

CellarRails.SearchRoute = Ember.Route.extend({
model: function(params) {
console.log('MODEL HOOKED!!');
return CellarRails.Track.find(params);
}
});

和模型中的查找方法:

CellarRails.Track.reopenClass({
find: function(params) {
...
some code
...
return result;
}
});

问题:结果数组正确返回,模型钩子(Hook)被触发,但 Controller 的内容未定义且长度为 0,所以我做错了什么?

最佳答案

您应该添加 setupController Hook 并将内容设置为您的 find() 操作返回的模型:

CellarRails.SearchRoute = Ember.Route.extend({
model: function(params) {
console.log('MODEL HOOKED!!');
return CellarRails.Track.find(params);
},
setupController: function(controller, model) {
controller.set('content', model);
}
});

更新,回应你最后的评论

参见 here用于工作演示。

希望对您有所帮助。

关于javascript - Ember.js 无法设置 ArrayController 的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18226954/

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