我似乎无法呈现我的页面。这很简单,但是我一直空白。当我在layout.html中用{{> homePage}}替换{{> yield}}时,一切都变淡了。但是,当我尝试使用router.js设置所有内容时(至少我认为安装正确),我一无所获。关于如何解决此问题的任何想法?

这是/ lib内的简单router.js

Router.configure({
  layoutTemplate: 'layout'
});

Router.map(function() {
  this.route('homePage', {path: '/'});
});


这是/ client / views / application中的简单layout.html

<body>
    {{> header}}

    <div id="articlesList" class="col-sm-2">
        {{> articlesList}}
    </div>

    <div id="main" class="col-sm-10">
        {{> yield}}
    </div>

    <div class="clear"></div>
    <footer id="footer">
        {{> footer}}
    </footer>
</body>


这是我的模板(home_Page.html),我希望在/ client / views / home中进行渲染:

<template name="homePage">
    <section id="slider" class="col-sm-12">
        {{> slider}}
    </section>

    <div class="container">
        <article id="featuredArticle" class="col-sm-8">
            {{> featuredArticle}}
            <img src="/images/bottom-ad.png" />
        </article>

        <aside id="sidebar" class="col-sm-4">
            {{> sidebar}}
        </aside>
    </div><!--container-->
</template>

最佳答案

您指定了layoutTemplate,但尚未在任何地方定义它。

创建一个名为“ layout”的模板并剪切/粘贴您的身体内容:使用Iron Router,您无需显式填充身体,Router会为您完成。

<template name="layout">
    <!-- content you put in <body> goes here ! -->
</template>

关于javascript - meteor JS Iron路由器良率故障排除,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23818440/

10-12 12:29
查看更多