関数型プログラミング、JS、Emberも初めてですが、Emberを使い始めました。いくつかのチュートリアルに従い、コントローラーから 1 つの変数をビューに表示することにしました。間違って理解した場合は訂正してください。ただし、ビューはコントローラーのコンテキストとして取得され、ハンドルバー テンプレート言語内でレンダリングされます。上記のコードは問題なく実行されます。名前だけが表示されず、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>