gpt4 book ai didi

javascript - Ember JS - 无法循环访问从模型返回的数组,即使它是一个数组?

转载 作者:行者123 更新时间:2023-11-28 00:15:36 25 4
gpt4 key购买 nike

我有两个 Ember JS 模型(在 Ember CLI 应用程序中):

  • 列表
  • 链接

每个列表可以有多个链接,因此,我将我的列表模型声明为:

import DS from 'ember-data';

export default DS.Model.extend({
title : DS.attr('string'),
slug : DS.attr('string'),
visibility : DS.attr('string'),
owner : DS.attr('string'),
links : DS.hasMany('link')
});

这就是链接模型的样子:

import DS from 'ember-data';

export default DS.Model.extend({
title : DS.attr('string'),
shortUrl: DS.attr('string'),
views : DS.attr('number'),
owner : DS.attr('string')
});

在 list.js 路由中,我进行调用以获取列表及其链接,如下所示:

model: function(params) {
// Get list properties and links
var list = this.store.find('list', params.listName);

return list;
},

REST 适配器正确进行调用,我的服务器返回以下响应:

{
"lists": [
{
"title": "Design",
"slug": "design",
"visibility": "private",
"owner": "5540b2fb9611f67a07f7f6c1",
"id": "5565ae05ca217589bc2a1bdf",
"links": [
1,
2,
3
]
}
],
"links": [
{
"id": 1,
"title": "Dribbble - Show and tell for designers",
"shortUrl": "http://sl.fi/a1CRgc",
"views": 144,
"owner": "5540b2fb9611f67a07f7f6c1"
},
{
"id": 2,
"title": "Dribbble - Show and tell for designers",
"shortUrl": "http://sl.fi/a1CRgc",
"views": 144,
"owner": "5540b2fb9611f67a07f7f6c1"
},
{
"id": 3,
"title": "Dribbble - Show and tell for designers",
"shortUrl": "http://sl.fi/a1CRgc",
"views": 144,
"owner": "5540b2fb9611f67a07f7f6c1"
}
]
}

我根据 Ember Data Model Maker 建模了我的响应。我有一个列表模板,应该循环访问模型中的链接,所以我这样做:

{{#each links in model}}
<span>{{ links.title }}</span>
{{/each}}

加载应用程序时出现以下错误,但我似乎无法找到解决方案:

Uncaught Error: Assertion Failed: The value that #each loops over must be an Array. You passed <web-app@model:list::ember388:5565ae05ca217589bc2a1bdf>

有人可以帮我解决吗?

最佳答案

links 是列表的子关系,链接数组成为列表上的属性...

因此你的每个助手应该是:

{{#model.links 中的每个链接}}

此外,您也希望尽快开始使用新语法..(取决于您的 ember 版本):

{{#each model.links as |links|}}

关于javascript - Ember JS - 无法循环访问从模型返回的数组,即使它是一个数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30483728/

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