私がこれまでに持っているもの:
App = Ember.Application.create({
LOG_TRANSITIONS: true
});
App.Router.map(function(match){
match('/').to('application');
match('/edit').to('edit');
});
App.ApplicationRoute = Ember.Route.extend({
redirect: function() {
this.transitionTo('edit');
},
events: {
startEdit: function( context ){
this.transitionTo( 'edit' );
}
}
})
App.EditRoute = Ember.Route.extend({
init: function(){
this._super()
console.log('EditRoute')
},
});
ハンドルバー:
<script type="text/x-handlebars" data-template-name = 'application'>
Hello World
{{ outlet main }}
</script>
<script type="text/x-handlebars" data-template-name = 'edit'>
<div class = 'edit-background'> Edit State: {{ title }} </div>
</script>
4 つの質問があります。
アプリケーションを開くと、ホームページにそのまま残ります。redirectTo フックは、すぐに別の状態にリダイレクトすると想定していますか?
さらに、
AplicationRoute
ここからの提案ごとにこのイベントハッシュを持っています: How to programmatically transition between routes using Ember.js' new Router . しかし、私は答えを読んでも、あなたがそれをどのように使用することになっているのかまだわかりません.コンソールでルーターをテストするにはどうすればよいですか? コマンドを呼び出して状態間を移動する前に、次は
transitionTo
何をすればよいですか?何らかの奇妙な理由で、アプリケーション テンプレートが 2 回レンダリングされているように見えます。そこには 2 つの「Hello World」があり、次のようなものを追加しようとすると、次のようになります。
<li>{{#linkTo edit}}edit{{/linkTo}}</li>
次のエラーが表示されます。
'Uncaught TypeError: Cannot read property 'container' of undefined -- ember.js:2223'