gpt4 book ai didi

javascript - Ember JS #each 循环的值必须是数组

转载 作者:行者123 更新时间:2023-11-29 18:05:57 25 4
gpt4 key购买 nike

刚接触 ember js,我遇到过这个错误。

Error: Assertion Failed: The value that #each loops over must be an Array. You passed '[Saab,Volvo,BMW]' (wrapped in (generated favorites controller))

在我的route/favorites.js

export default Ember.Route.extend({
model: function() {
// the model is an Array of all of the posts
// fetched from this url

var cars = ["Saab", "Volvo", "BMW"];
return cars;
}
});

这是我的 route/favorite.js 中唯一的一行

在我的 app/router.js 上

import Ember from 'ember';
import config from './config/environment';

var Router = Ember.Router.extend({
location: config.locationType
});

Router.map(function() {
this.route('favorites');
});

export default Router;

还有我的最爱.hbs

<h1>{{appName}}</h1>

<ul>
{{#each controller as |item|}}
<li>{{item}}</li>
{{/each}}
</ul>

我错过了什么?

最佳答案

试试这个

{{#each model as |item|}}
<li>{{item}}</li>
{{/each}}

背景 Ember.ArrayController 在当前版本的 emberjs 中已弃用。如果您定义了 Ember.ArrayController,您使用的代码将有效,但现在不鼓励这样做。相反,我猜 Ember.Controller 是自动为你创建的,因为你没有显示。因此,您应该在 Controller 上使用 model 属性并对其进行循环。

关于javascript - Ember JS #each 循环的值必须是数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31229913/

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