我有一个使用 Firebase 后端(Emberfire 适配器)构建的 Ember JS 调查应用程序。
以下代码在开发时可以正常工作:
if(!(_this.currentModel.get('respondents').contains(thisUser)))
{
thisUser.get('surveysToTake').pushObject(_this.currentModel);
_this.currentModel.get('respondents').pushObject(thisUser);
var userResponseSet = _this.store.createRecord('response-set', {
survey: _this.currentModel,
respondentid: thisUser
});
var respSetSurveyLookupObj = {'surveyId': _this.currentModel.get('id'),
'respSetId': userResponseSet.get('id')};
if(thisUser.get('respSetSurveyLookup'))
{
thisUser.get('respSetSurveyLookup').pushObject(respSetSurveyLookupObj);
} else {
thisUser.set('respSetSurveyLookup', [respSetSurveyLookupObj]);
}
thisUser.save().then(function(){
Ember.RSVP.all([_this.currentModel.save(), userResponseSet.save()]).then(function(){
controller.setProperties({ multipleUsers: '', showAddUsers: false});
});
}).catch(function(msg){console.log(msg);});
}
但我这样做的那一刻:
ember build -prod
尝试保存用户对象时会引发错误。引发错误的具体位置是当我尝试添加到 respSetSurveyLookup 数组时。
不幸的是,由于错误消息在缩小的 JS 代码中,因此我无法沿着堆栈跟踪进行工作。
所以我的问题是,只有在完成 ember 构建时才可能导致用户对象保存失败?这是由 Ember CLI(构建)引起的问题吗?还是与 Firebase Emberfire 适配器有关?
附加信息:我使用的是 Ember CLI 1.13.13、Ember 1.13.11 和 Ember 数据 1.13.11。