我正在试验最新的 Ember.js api,但遇到了一个小问题。一切正常,除了路由反序列化方法。要完全理解我的问题,请转到我的博客 http://eduardmoldovan.com/ ,单击帖子,它将加载。然后刷新页面。所有的内容都会消失。
我在这里做错了什么?显然有些东西实现得很糟糕,但我找不到问题所在。

这是处理这一切的死记硬背。

Ngin.ArticleRoute = Ember.Route.extend({
    serialize: function(model) {
        "use strict";
        if (model) {
            return {
                channel: model.get("channel"),
                url: model.get("url") + "/"
            };
        }

    },
    setupController: function(controller, model) {
        "use strict";
        controller.set("channels", Ngin.Channel.find());
        controller.set("comments", Ngin.Comment.find({
                filter: "comments-by-url",
                url: model.get("url")
            })
        );
        controller.set("content", model);
    },
    model: function(parameters) {
        "use strict";
        var article = Ngin.Article.find({
                filter: "by-url",
                url: parameters.url
            });
        return article;
    },
    renderTemplate: function() {
        "use strict";
        this.render("header", {
            outlet: "header"
        });
        this.render("article", {
            outlet: "content"
        });
        this.render("footer", {
            outlet: "footer"
        });
        $("html, body").animate({scrollTop: 0}, "fast");
    }
});

最佳答案

反序列化不再是公共(public) API 的一部分,您应该使用 model 钩子(Hook)。这是一个 link to the ember guides article

关于Ember.js 反序列化实现,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15483315/

10-12 00:00
查看更多