我使用RESTAdapter连接到API。这似乎在IE9及以上版本中运行良好。出于某种原因,当我试图在IE8中查看数据时,我在处理路由时遇到了错误:campaign.index"没有别的。
我用来创建Ember应用程序的软件版本是:
Ember : 1.8.1
Ember Data : 1.0.0-beta.8.2a68c63a
Handlebars : 1.3.0
jQuery : 1.10.2
我尝试使用bower更改版本,因此它们仍然兼容,但我仍然收到有关索引的错误,但没有解释。
我的路线是:
TM.CampaignsIndexRoute = Ember.Route.extend({
model: function(){
return this.store.find("campaign")
}
});
我的模型属性被定义为:
TM.Campaign = DS.Model.extend({
campaign_name: DS.attr(),
campaign_code: DS.attr(),
desc: DS.attr(),
effective_from: DS.attr(),
products: DS.attr(),
type: DS.attr()
});
JSON设置为:
{
"campaigns":[
{
"id":"1",
"campaign_name":"Necessitatibus et.",
"campaign_code":"YQADM",
"desc":"1",
"effective_from":"2014-11-24 14:33:07",
"products":"Loans",
"type":"Gold"
},
{
"id":"2",
"campaign_name":"Voluptatem sequi adipisci necessitatibus.",
"campaign_code":"VFYGTO",
"desc":"1",
"effective_from":"2014-11-24 14:33:07",
"products":"Loans",
"type":"Gold"
}
],
"meta":{
"per_page":10,
"total":30
}
}
为了更好地了解它在IE 8中失败的地方,我打开了LOG_TRANSITIONS_INTERNAL,它在尝试调用afterModel钩子时失败
Attempting transition to campaigns
Transition #1: campaigns: calling beforeModel hook
Transition #1: campaigns: calling deserialize hook
Transition #1: campaigns: calling afterModel hook
Transition #1: campaigns.index: calling beforeModel hook
Transition #1: campaigns.index: calling deserialize hook
Error while processing route: campaigns.index
Transition #1: campaigns.index: transition was aborted
我没有收到任何有关Object.create的错误,因为我正在使用垫片来解决这个问题,而且似乎工作正常。
我考虑过阅读有关创建Ember qunit测试以获取更多信息的内容。这是否是正确的方向,或者我是否缺少IE 8的配置?
不幸的是,我必须构建这个应用程序以支持IE8,并且我喜欢使用Ember,所以我希望我能坚持使用它。
答案 0 :(得分:0)
所以我再次开始并剥离了我的每个插件。我正在使用Laravel和Ember来创建我的应用程序。 Laravel Debug栏阻止模型出现在IE8中。
感谢您的努力尼古拉斯。非常感谢。