【发布时间】:2015-09-15 02:07:49
【问题描述】:
我正在使用带有 {{> yield}} 语句的主模板来呈现我的 Meteor JS 页面。看起来是这样的:
<template name="main">
<head>
<meta charset="utf-8">
<meta name="description" content="">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Title</title>
<link rel="author" href="humans.txt">
<!-- Bootstrap CSS -->
<link rel="stylesheet" href="css/bootstrap.min.css">
<link rel="stylesheet" href="css/bootstrap-theme.min.css">
<link rel="stylesheet" href="css/spacers.css">
</head>
<body>
<div class="container">
{{> yield}}
</div>
<!-- Bootstrap JS -->
<script src="js/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
</body>
</template>
有了它,我可以渲染我的实际页面:
<template name="home">
HOME
</template>
这一切都很实用,因为我像这样使用Iron Router:
Router.configure({
layoutTemplate: "main",
notFoundTemplate: "404"
});
Router.route("/", function() {
this.render("home");
});
我面临的问题是页面标题没有被呈现。我希望页面标题为“标题”,因为我已将 <head> -> <title> 定义为“标题”(您可以在我的主模板中看到)。
这里奇怪的是所有 CSS 都加载了,这表明 <head> 部分已 - 至少部分 - 呈现。
【问题讨论】: