我正在使用RESTAdapter連接到API。這似乎在IE9及更高版本中運行良好。出於某種原因,當我試圖在IE8中查看數據時,出現「處理路由時出錯:campaigns.index」,而沒有其他任何內容。Ember,JSON和IE8。無法顯示數據
我使用創造了灰燼應用程序的軟件版本是:
Ember : 1.8.1
Ember Data : 1.0.0-beta.8.2a68c63a
Handlebars : 1.3.0
jQuery : 1.10.2
我試圖改變使用涼亭的版本,所以他們仍然兼容,但我仍然得到關於沒有解釋索引錯誤。
我的路線是:
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 Hoo失敗ķ
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,所以我希望我可以堅持下去。
這可能與您使用的是beta-8無關,但是由於beta-9 Ember-data需要IE8的墊片。可能會修復這個bug,可能不會,但這是我能想到的唯一的IE8問題。看看Object.create部分(http://emberjs.com/blog/2014/08/18/ember-data-1-0-beta-9-released.html)。可能想嘗試升級。 – NicholasJohn16 2014-12-04 00:52:35
不幸的是,數據仍然不會出現在IE8中。 – Jetchy 2014-12-04 09:55:13
我曾嘗試使用Ember模型,只是$ .getJSON,我仍然有顯示數據的問題。我開始認爲這與IE8處理承諾的方式有關,因爲在afterModel掛接調用時會發生此錯誤... – Jetchy 2014-12-04 14:21:11