【发布时间】:2014-10-16 12:20:19
【问题描述】:
我正在使用 ember.js 进行应用程序的 UI 端开发。对于每个动作,我们都会显示一个模态弹出窗口,并且在该弹出窗口中有表单,然后在表单提交时,我们有一些具有控制器的相应动作。到目前为止,它工作正常,如果我们正在进行 Web 服务调用,它会获取服务器响应并更新存储中的相应模型 js 文件。 所以新的要求来了,如果我们在特定的文本字段中给出一些值,那么服务器调用应该去获取一些信息。现在的问题是,这个值没有在存储中更新。 html(template) 就像任何 html 表单一样,mouseout 具有调用特定字段的一些操作。那个动作是
App.MainFormSubmitActionController = App.ModalController.extend({
needs : 'application',
actions : {
actionToBeCalled : function() {
this.store.find('xyzModel');
//the above line should normally find xyzModal in store if not found then hit server and then update the store too
},
mainFormSubmitAction : function() {
//some task done here
}
}
});
我从服务器返回的 json 对象是:
{"payload":{"xyzModel":{"gmp":25.0,"type":"someType","id":1}},"status":"SUCCESS"}
js文件是
App.XyzModel = DS.Model.extend({
"type" : DS.attr(),
"gmp" : DS.attr()
});
服务器调用正常,我的问题是为什么当我收到响应并且未找到模型错误时 ember 商店没有更新。我用谷歌搜索了很多,但似乎没有人遇到过同样的问题。我可能做错了什么。
【问题讨论】:
-
我仍然不确定这是什么原因,但我尝试了一件事,那就是我将输出中的 gmp 值转换为服务器中的字符串。在此之后,我的 ember 商店更新了这些值。它对任何人都有任何意义
标签: javascript jquery ember.js ember-data