繁体   English   中英

灰烬嵌套路线和模型完全不渲染

[英]Ember nested route and models not rendering (at all)

我可以显示“帮助主题”标题​​,但是没有定义的“ FIXTURES {{#each model}}不会呈现。 这是我第一次使用Ember,因此任何事情(实际上是任何事情)都将有所帮助,因为我没有在浏览器调试器中收到任何错误消息。

App.js

App.Router.map(function () {
    this.resource('home', { path: "/Index" });
    this.resource('agents', { path: "/Agents" });
    this.resource('topics',  function() {
        this.resource('topic', {path: '/topic/:topic_id'})
    });  
    this.resource('contacts', { path: "/Contacts" });
});

App.TopicRoute = Ember.Route.extend({
    model: function () {
        return App.Topic.find();
    }
})

App.Topic = DS.Model.extend({
    title: DS.attr('string'),
    info: DS.attr('string')
});

App.Topic.FIXTURES = [{
    id: 1,
    title: "Periscope",
    info: "Periscope is a read-only application pulling information from D3."
}, {
    id: 2,
    title: "Second post",
    info: "ASP.NET MVC 4 is a framework for building scalable, standards-based web applications using well-established design patterns and the power of ASP.NET and the .NET Framework."
}, {
    id: 3,
    title: "Ember.js",
    info: "Ember.js is designed to help developers build ambitiously large web applications that are competitive with native apps."
}];

视图

                    <script type="text/x-handlebars">
                        <div class="navbar">
                            <div class="navbar-inner">                                
                            <ul id="menu">
                                <li>{{#linkTo 'home'}}Home{{/linkTo}}</li>
                                <li>{{#linkTo 'agents'}}Agents{{/linkTo}}</li>
                                <li>{{#linkTo 'topics'}}About{{/linkTo}}</li>
                                <li>{{#linkTo 'contacts'}}Contact{{/linkTo}}</li>
                            </ul>
                            </div>
                        </div>
                        {{outlet}}
                    </script>


<script type="text/x-handlebars" id="topics">
    <div class="container-fluid">
        <div class="row-fluid">
            <div class="span3">
                <table class='table'>
                <thead>
                    <tr><th>Help Topics</th></tr>
                </thead>
                {{#each model}}
                <tr><td>
                    {{#linkTo 'topic' this}}{{title}} {{/linkTo}}
                </td></tr>
                {{/each}}
                </table>
            </div>
            <div class="span9">
                {{outlet}}
            </div>
        </div>
    </div>
</script>
<script type="text/x-handlebars" id="topic">
    <h1>{{title}}</h1>

    <div class="intro">
        {{info}}
    </div>
</script>

尝试像这样更改路线:

App.TopicsRoute = Ember.Route.extend({
  model: function () {
    return App.Topic.find();
});

希望能帮助到你。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM