1

所以这是我的HTML:

<script type="text/x-handlebars">
    <div id="top-panel">
        <h1>{{title}}</h1>
    </div>
    <div id="wrapper">
        {{outlet}}
    </div>
</script>

<script type="text/x-handlebars" id="home">
    <ul>
        {{#each}}
        <li>{{name}}</li>
        {{/each}}
    </ul>
</script>

<script src="js/app.js"></script>
<script src="js/router.js"></script>

我的 app.js:

window.App = Ember.Application.create();

我的路由器.js:

App.Router.map(function () {
    this.resource("home", { path: "/" });
});

App.HomeRoute = Ember.Route.extend({
    model: function () {
        $.getJSON("mocks/stub1.json", function (data) {
            return data;
        });
    }
});

现在我的问题是如何将变量发送到默认模板(在 {{outlet}} 内呈现主模板的模板)。

如您所见,我希望 {{title}} 是一个动态变量。问题是,我已经有一个分配给 / 路径的主路由,所以我不确定如何使 {{title}} 动态化。

4

1 回答 1

1

您所称的默认模板称为application模板。因此,您可以根据自己的喜好定义或定义title属性。如果您使用控制器:ApplicationControllerApplicationRoute

App.ApplicationController = Ember.ObjectController.extend({
  title: 'Foo',
  ...
});

希望能帮助到你。

于 2013-10-17T18:06:27.207 回答