ArrayController属性返回字符串字面量

Ember JS - ArrayController property returning string literal

本文关键字:字符串 属性 返回 ArrayController      更新时间:2023-09-26

我有以下代码在我的EmberJS应用程序

// Instantiate the Ember app
var App = Ember.Application.create();
App.Store = DS.Store.extend({
  adapter: DS.RESTAdapter
});
// Mappings for routing
App.Router.map(function () {
    this.route("index", { path : "/"});
    this.route("episode", {path : "/episode"});
});
// Home Page route
App.IndexRoute = Ember.Route.extend({
    model : function () {
        return $.getJSON('http://route-to-json/').then(function (data){
            return data;
        });
    }
});
App.EpisodeRoute = Ember.Route.extend({
    model : function () {
        return $.getJSON('http://route-to-json/episode/').then(function (data) {
            return data;
        });
    },
    setupController: function (controller, model) {
        controller.set('model', model);
    }
});
App.EpisodeController = Ember.ArrayController.extend({
    firstEpisode : function () {
        var self = this;
        this.modelFor('episode').then(function (list) {
            return list.get('firstObject');
        });
    },
    otherEpisodes : function () {
        var self = this;
        this.modelFor('episode').then(function (list) {
            return list.get('content');
        });
    }
});

在情节控制器中,第一个方法完全工作,并呈现

<h1> {{ firstObject.programmeName }} </h1>
<time>{{ firstObject.scheduleDate }}</time>
<p>{{ firstObject.summary }}</p>

然而,当尝试使用{{otherEpisodes}}参数时,函数本身将作为字符串字面值返回

。"功能……"

因此,当尝试通过它{{#/each}}时,我得到一条消息,告诉我它试图循环通过上面的字符串而不是数组。

任何帮助将不胜感激!

通过查看代码回答了我自己的问题,应该使用"content"作为属性而不是otherEpisodes。分析。