我在我的一个Ember控制器中有一个动作,我打电话给我的后端,ESLint给我一个错误
Ember Expected property shorthand object-shorthand
在AJAX数据中保存':保存
我是Ember的新手,对ES6语法有些新手,所以我不完全确定这些代码是如何制作的更简单'。
控制器
merge(preserve) {
let experienceIdList = [];
// To-Do Make this a computed property
get(this, 'model.experiences').forEach(function(experience) {
experienceIdList.pushObject(experience.id);
});
$.ajax({
url: `${config.EmberENV.API_HOST}/api/v0.1/experiences/merge/`,
type: 'POST',
data: {
'experience_ids': experienceIdList,
'name': get(this, 'model.newExperience.name'),
'preserve': preserve,
'moduleExperience': get(this, 'moduleExperience')
}
}).then(() => {
this.transitionToRoute('authenticated.experiences');
}).catch(function(error) {
this.set('errorMessage', error.error || error);
});
}
答案 0 :(得分:1)
ESLint documentation on object-shorthand更改
之后'preserve': preserve,
到
preserve,
所以data
的完整对象声明应该是:
data: {
'experience_ids': experienceIdList,
'name': get(this, 'model.newExperience.name'),
preserve,
'moduleExperience': get(this, 'moduleExperience')
}
请注意,您可以在此文件中找到的es-lint选项中更改此行为:.eslintrc.js
(在ember-root中)