0
我无法使Ember的queryRecord正常工作。我试图从服务器获取一个站点配置。Ember模型查找记录
//app/routes/application.js
model: function(){
return this.get('store').queryRecord('config',{}).then(function(config) {
console.log(config.get('appname'));
});
}
//app/adapters/config.js
import DS from "ember-data";
import ENV from './../config/environment';
export default DS.Adapter.extend({
queryRecord(modelName, query) {
return Ember.$.getJSON(ENV.APP.apiFull + 'config');
}
});
//app/serializers/applications.js
import DS from 'ember-data';
export default DS.RESTSerializer.extend({
keyForAttribute: function(attr, method) {
return Ember.String.underscore(attr).toUpperCase();
}
});
//从服务器AJAX返回的JSON
{"config":{"id":1,"environment": "development", "appname":"Sample App Name"}}
// app/routes/application中的console.log语句返回undefined。这一切似乎都与2.9版的Ember文档相匹配。我做错了什么?
边注:不要忘记返回模型钩子的结果。 – kumkanillam
我在模型钩子中添加了返回值,但问题陈述保持不变。 – user6041966
Ajax响应看起来是REST格式,所以adapters/config.js文件应该扩展'DS.RESTAdapter' -https://emberjs.com/api/data/classes/DS.RESTAdapter.html#method_queryRecord – kumkanillam