gpt4 book ai didi

javascript - 操作后 Ember 更新模型

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:04:42 25 4
gpt4 key购买 nike

我有一个在页面加载时加载一些 JSON 数据的 ember 模板,有一些按钮,当单击这些按钮时,我需要进行不同的 json 调用并更新模型。

在此代码中一切正常,但在触发操作并进行 json 调用后模型未更新。

我该如何解决?

App.DatRoute = Ember.Route.extend({ 
model: function(parms){
return Em.RSVP.hash({
datam : Ember.$.getJSON('URL')
});
},
afterModel: function(){
$(document).attr('title', 'Title');
},
renderTemplate: function() {
this.render();
this.render('fter', { into: 'outlet', outlet: 'fter' });
},
actions :{
action: function(){
return Em.RSVP.hash({
datam : Ember.$.getJSON('URL', {data})
});
}
}
});

谢谢

最佳答案

因为您没有做任何更新模型的事情。 Ember 对操作的返回值不做任何处理,无论是 promise 还是其他。您需要将操作放在 Controller 上,并使用从 ajax 调用返回的数据设置模型:

action: function() {
var self = this;
Ember.$.getJSON('URL', {data})
.then(function(result) {
self.set('model', result);
});
}

或者我的风格,完全等价

action: function() {
var set = this.set.bind(this, 'model');
Ember.$.getJSON('URL', {data}).then(set);
}

关于javascript - 操作后 Ember 更新模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26824974/

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