これは私の app.js ファイルです。クラスのメソッドnavigate
内からルーターのメソッドにアクセスする必要があります。しかし、appRouter はビューの後に定義されているため、ビュー内からルーターを認識できません。そのため、任意のクラスまたはメソッドからルーターにグローバルにアクセスする方法を見つける必要があります。どうすればこの問題を回避できますか?navigateToLogin
LandingView
var LandingView = Backbone.View.extend({
tagName: 'div',
id: 'landing',
className: 'landingpad',
events: {
'click button#login': 'navigateToLogin',
},
render: function (){
(this.$el).append("<button class='button' id='login'>Login</button><br/><br/><br/>");
(this.$el).append("<button class='button' id='new'>New User?</button>");
console.log(this.el);
return this;
},
navigateToLogin: function(e){
app.navigate("/login", true);
return false;
},
});
var appRouter = Backbone.Router.extend({
initialize: function(){
$('#content').html(new LandingView().render().el);
}
});
app = new appRouter();