【发布时间】:2020-11-10 04:19:42
【问题描述】:
我正在使用旧的 ember 应用程序,我正在处理的功能是打开模式,选择标签并关闭模式。关闭模式操作使用发送到照片控制器中具有刷新操作的操作,但我在该控制器中的计算属性没有重新运行。我需要重新运行 quickSearchTagNames 计算属性,以获取要在此页面上显示的新标签。通过阅读 Ember 文档,我了解到在控制器中调用刷新应该刷新该页面。
最喜欢的标签路线:
close() {
console.log("TRANSITION")
this.send("sessionChanged");
},
拍照路线
sessionChanged: function() {
console.log("Photo session change")
this.transitionTo('franchisor.photos.index').then(() => {
this.refresh();
});
}
在照片控制器中刷新后未重新加载的计算属性
quickSearchTagNames: Ember.computed('franchisor.id', function() {
var franchisor = this.get('franchisor');
var franchisorID = franchisor.get('id');
const favoriteTagsPromise = this.get('favoriteTags').index({
franchisorID
});
console.log("IN quickSearchTagNames")
const tagNamesPromise =
favoriteTagsPromise.then(favoriteTags => favoriteTags.filter(tag => tag.get('favorite') === true).map(tag => tag.get('tagName')));
console.log("tagNamesPromise", tagNamesPromise)
return DS.PromiseArray.create({
promise: tagNamesPromise
});
}),
【问题讨论】:
标签: ember.js