Javascript 计算属性don';t观察数组中对象的变化
当我更改语言时,我的组件不会观察对象数组中的更改。它只在更改路线后工作,但它应该立即更改所有内容,而无需重新加载页面 组件代码:Javascript 计算属性don';t观察数组中对象的变化,javascript,ember.js,Javascript,Ember.js,当我更改语言时,我的组件不会观察对象数组中的更改。它只在更改路线后工作,但它应该立即更改所有内容,而无需重新加载页面 组件代码: columnsToEdit: Ember.computed('i18n.locale', function() { let i18n = this.get('i18n'); return Ember.A([ { "propertyName": "name", "title": i18n.t('Name')
columnsToEdit: Ember.computed('i18n.locale', function() {
let i18n = this.get('i18n');
return Ember.A([
{
"propertyName": "name",
"title": i18n.t('Name')
},
{
"propertyName": "phone",
"title": i18n.t('Name'),
},
]);
}),
columns: Ember.computed.map('columnsToEdit.[]', function(column){
return column;
}),
我认为,它应该是有效的。“ColumnsToEdit”在“ColumnsToEdit”中查找i18n.locale的更改。下一个“columns”查找“columnsToEdit”中的更改。当我在“columns”中调用“console.log”时,它会返回预期的结果,但在我看来,在单击“language switch”之后什么也没有发生。那么为什么我的组件没有在视图中更改“标题”?任何帮助都将不胜感激。您能试试这个吗:
currentLocale: Ember.computed.readOnly('i18n.locale'),
columnsToEdit: Ember.computed('currentLocale', function() {
let i18n = this.get('i18n');
return Ember.A([
{
"propertyName": "name",
"title": i18n.t('Name')
},
{
"propertyName": "phone",
"title": i18n.t('Name'),
},
]);
}),
columns: Ember.computed.map('columnsToEdit.[]', function(column){
return column;
}),
显示更多代码
但是,您需要了解,您的属性列
始终与列编辑
完全相同。我不确定您想做什么,但您目前没有在列中执行任何操作