ed9*_*133 5 ember.js ember-data ember-cli-mirage
我正在开发我的第一个Ember应用程序并让它以路径返回静态JSON对象来显示我想要的方式model():
element: {
name: "First Element",
divisions: [{
name: "First Division",
sets: [{name: "Set 1"},{name: "Set 2"},{name: "Set 3"}]
}, {
name: "Second Division",
sets: [{name: "Set 1"},{name: "Set 2"},{name: "Set 3"}]
}]
}
Run Code Online (Sandbox Code Playgroud)
现在我正在尝试重构使用Ember Data + Mirage并且度过了一段糟糕的时光.
这是我的index.js路线
export default Ember.Route.extend({
model() {
return this.store.find('element', 1);
},
Run Code Online (Sandbox Code Playgroud)
如果我config.js像这样设置我的幻影:
this.get('/elements', function() {
return {
elements: [
{
id: 1,
name: 'First Element',
divisions: [1, 2]
}
]
}
});
Run Code Online (Sandbox Code Playgroud)
然后我收到这个错误:
Your Ember app tried to GET '/elements/1', but there was no route defined to handle this request.
Run Code Online (Sandbox Code Playgroud)
如果我config.js像这样设置我的幻影:
this.get('/elements/1', function() {
return {
id: 1,
name: 'First Element',
divisions: [1, 2]
}
});
Run Code Online (Sandbox Code Playgroud)
然后我收到这个错误:
22:46:40.883 "Error while processing route: index" "Assertion Failed: normalizeResponse must return a valid JSON API document:
* One or more of the following keys must be present: "data", "errors", "meta"." "EmberError@http://localhost:4200/assets/vendor.js:25582:15
Run Code Online (Sandbox Code Playgroud)
编辑:
所以这不是所述问题的解决方案,但它让我超越了这一点.我放弃了Pretender,并根据这个优秀的教程再次开始创建一个实际的Rails服务器:http://emberigniter.com/modern-bridge-ember-and-rails-5-with-json-api/
我能够以这种方式做我想做的一切,如果我想把它变成一个生产应用程序,我就更接近了.
| 归档时间: |
|
| 查看次数: |
4937 次 |
| 最近记录: |