gpt4 book ai didi

javascript - 来自 Ember 数据的模型未渲染

转载 作者:行者123 更新时间:2023-12-03 09:49:42 25 4
gpt4 key购买 nike

我正在尝试弄清楚如何使用 Ember Data 获取数据并进行渲染。经过几个问题后,我在控制台上没有收到任何错误,但在加载数据后存储是空的。

window.App = Ember.Application.create();

App.IndexRoute = Ember.Route.extend({
model: function(){
return this.store.find('games');
}
});

App.GamesModel = DS.Model.extend({
name: DS.attr('string')
});

App.GamesAdapter = DS.RESTAdapter.extend({
host: 'http://private-0f6a1-ember37.apiary-mock.com'
});

App.GamesSerializer = DS.RESTSerializer.extend({
normalizePayload: function(payload){
var result = { games: payload };
return result;
}
});

这是模板:

<script type="text/x-handlebars" data-template-name="index">
<ul>
{{#each model}}
<li>{{name}}</li>
{{/each}}
</ul>
</script>

以下是 CodePen 上代码的链接:http://codepen.io/tarmann/pen/GJMJxq

我还尝试了不同版本的 Ember Data 和 Ember,但没有成功。

最佳答案

您的问题是复数化:您指定 GamesModel 而不是 GameModel,您找到 games 而不是 game 等。我更改了所有这些事件,以符合 Ember 的预期(您可以在指南中阅读有关 Ember 标准的更多信息)和 it works, CodePen :

App.IndexRoute = Ember.Route.extend({
model: function(){
return this.store.find('game');
}
});

App.GameModel = DS.Model.extend({
name: DS.attr('string')
});

App.GameAdapter = DS.RESTAdapter.extend({
host: 'http://private-0f6a1-ember37.apiary-mock.com'
});

// https://www.youtube.com/watch?v=HL2bMjndviE
App.GameSerializer = DS.RESTSerializer.extend({
normalizePayload: function(payload){
var result = { games: payload };
return result;
}
});

App.IndexController = Ember.Controller.extend({
init: function(){
this.store.push('game', {
id: 100,
name: "Added from controller"
});
}
});

结果截图: enter image description here

关于javascript - 来自 Ember 数据的模型未渲染,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30912408/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com