2

虽然它并没有变得比这更简单:fiddle 我无法获得要渲染的模板。我显然错过了一些简单的东西,但现在已经主演了好几个小时了。有人可以发现错误吗?

在 chrome 中调试时,我可以看到视图和控制器都已输入,但模板似乎并没有出现。我的笔记本电脑上运行了其他几个 ember 测试,效果很好。

<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');
    }
});
4

2 回答 2

0

如果我没记错的话,您需要将代码包装在<script>似乎丢失的标签中。但是,当您将代码复制到此站点时,这可能是由于拼写错误。

于 2013-01-24T08:23:44.973 回答
0

问题很简单:您选择 Ember 作为框架没有包含 jQuery,这是 Ember 运行所必需的。我更新了 Fiddle以包含Ember 和 Handlebars作为资源jQuery作为Framework

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

Albumartist.Router.map(function() { // no match argument needed anymore
    this.route('index', {path: '/'});
});
于 2013-01-24T10:49:22.240 回答