我正在使用带有最新 ember-data 和最新 Ember.js (RC5) 的 REST 适配器
我有Module
以下映射的模型:
DS.Model.extend({
type: DS.attr('string'),
url: DS.attr('string'),
text: DS.attr('string'),
header: DS.attr('string')
});
针对返回 JSON 的 API:
{
"status": "success",
"modules": [{
"id": "123456",
"type": "video",
"url": "http://some.where.com/video.mp4"
}, {
"id": "123457",
"type": "text",
"text": "Lorem ipsum dolor sit amet ..."
}, {
"id": "123458",
"type": "feedback",
"header": "Indtast noget feedback til os."
}]
}
- 如您所见,模块有不同的类型。
- 可以有许多具有相同类型的对象。
- 模块是数组中的对象,因为顺序很重要。
我遇到的问题是如何在模板中表示它们?我需要为它们中的每一个创建不同的视图,但是在车把中没有这样的东西,比如 if type === video then
(只有布尔值,如果这让我担心我会以错误的方式解决问题)呈现不同的视图:
if type === video
{{view moduleVideo}}
if type === text
{{view moduleText}}
if type === feedback
{{view moduleFeedback}}
如何为不同的类型渲染不同的视图?还是有更多的 Ember.js 方式来设计这样的东西?