我开始使用 Ember,虽然我对函数式编程、JS 和 Ember 也很陌生。我遵循了一些教程,并决定尝试在视图中显示控制器中的一个变量。如果我理解错误,请纠正我,但视图作为控制器的上下文,并在车把模板语言中呈现。上面的代码运行没有任何问题,只是没有显示名称,只是来自 loginState 模板的纯文本。
//app.js
App = Ember.Application.create();
App.ApplicationView = Ember.View.extend({
templateName: 'application'
});
App.ApplicationController = Ember.Controller.extend();
App.LoginStateView = Ember.View.extend({
templateName: 'loginState'
});
App.LoginStateController = Ember.Controller.extend({
name: 'Juriy'
});
App.Router = Ember.Router.extend({
root: Ember.Route.extend({
index: Ember.Route.extend({
route: '/',
connectOutlets: function(router){
router.get('applicationController').connectOutlet('loginState');
}
})
})
});
和
//index.html
<body>
<script type="text/x-handlebars" data-templamte-name="application">
My login page.
{{outlet}}
</script>
<script type="text/x-handlebars" data-templamte-name="loginState">
The name in the login state is {{name}}
</script>
</body>