ember.js模板未呈现

时间:2013-01-24 08:19:28

标签: ember.js

虽然它并不比这简单:fiddle我无法获得要渲染的模板。我显然错过了一些简单的东西,但现在已经在这里担任了几个小时。有人能发现错误吗?

在chrome中调试时,我可以看到View和控制器一样输入,但模板似乎没有生效。我在我的笔记本电脑上运行了几个其他的余烬测试,可以很好地进行渲染。

<script type="text/x-handlebars" data-template-name="index">
    <h1>Application</h1>

    <p>Your content here.</p>

    {{outlet}}

</script>

Albumartist = Ember.Application.create();

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

Albumartist.IndexView = Ember.View.extend({
});

Albumartist.IndexRoute = Ember.Route.extend({
});

Albumartist.IndexController = Ember.Controller.extend({
    renderTemplate: function(controller, model){
        console.log('hi');
    }
});

2 个答案:

答案 0 :(得分:0)

如果我没弄错的话,您需要将代码包装在<script>标签中,这些标签似乎缺失了。这可能是在将代码复制到此站点时的错字。

答案 1 :(得分:0)

问题很简单:你选择Ember作为一个框架并没有包含jQuery,这是Ember运行所必需的。我已更新the Fiddle以将 Ember和Handlebars 包含为资源,并将 jQuery 包含为框架

此外,由于路由器v2.1,您不必将match参数传递给路由器:

Albumartist.Router.map(function() { // no match argument needed anymore
    this.route('index', {path: '/'});
});