2016-03-26 1 views
1

Я использую следующий простой код для извлечения пользователя с сервера.Ember.js - Как обрабатывать ошибку с помощью метода DS.store.findRecord()

var someUser = this.store.findRecord ('user', 0);

Я использую это для извлечения пользователя. если пользователь не найден на 0 id,

сервер возвращает 404. и ошибка согласно json api.

но как я могу узнать об ошибке на стороне клиента об этом?

+0

Вы можете найти ответ в [документах] (https://guides.emberjs.com/v2. 4.0/маршрутизация/загрузка и ошибки-подсостояние/# toc_code-код ошибка-подсостояние). Также вы можете прочитать [мое сообщение] (http://blog.gennady.pp.ua/how-to-handle-backend-errors-in-ember-js-properly/) об обработке ошибок –

ответ

2

Взятые из Ember guides:

Использование store.findRecord() для извлечения записи по его типу и ID. Это вернет обещание, которое соответствует запрошенной записи.

Поскольку возвращаемое значение является обещанием, вы можете использовать его как любое другое обещание:

this.store.findRecord('user', 0) 
    .then(function(user){ 
    // user has been found 
    someUser = user; 
    }).catch(function(error){ 
    // user not found or any other error 
    }); 
+0

, но в консоли ошибка по-прежнему сохраняется – Mario

+0

Ответьте здесь: https://stackoverflow.com/questions/11949095/how-can-i-stop-jquery-ajax-from-logging-failures-to-the-console – Pavol