0
我遇到了骨干路由和视图的问题。当我点击链接并且URL正确时,视图被正确呈现,但是问题是每当我刷新页面时,url仍然是相同的,但视图返回到索引视图,其中它应该呈现该路线下的视图导致事件处理不当。refesh上的主干视图渲染
这里的路由器:
var MainRouter = Backbone.Router.extend({
initialize: function() {
// homeView.render();
},
routes: {
'': 'index',
'register': 'register'
}
});
var mainRouter = new MainRouter();
router.on('route:index', function() {
if (htmlObj.hasClass('connected')) {
if (htmlObj.hasClass('present')) {
profileView.render();
}
homeView.render();
}
});
router.on('route:register', function() {
signUpView.render();
});
Backbone.history.start();
,然后在视图事件我设置trigger
到true
Backbone.history.navigate('#/signup', {trigger: true});
因此,这将运行特定路由的功能。 我也尝试过使用pushState and root
,但它在刷新时有同样的问题,但这次它说那个页面没有找到。
感谢
我已经尝试实现这一个,但它并没有解决问题 – OneScrewLoose 2014-09-18 21:53:37
尝试添加[浏览](HTTP:// backbonejs。 org /#Router-navigate)调用。在正常情况下,它会触发指定的路线两次。尝试放置一些断点来调试你的代码。检查哪个功能在启动时触发。也许有HTML标记呈现。 – aleha 2014-09-19 06:45:47