本文介绍了在Backbone.js的控制器默认路由?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我要为我的Backbone.js的控制器默认路由。目前,我做它像这样:
I want to set a default route for my backbone.js controller. Currently I do it like so:
class DealSearchController extends Backbone.Controller
routes:
'list' : 'showListView'
'photos' : 'showPhotoView'
'map' : 'showMapView'
initialize: ->
....
window.location.hash = 'list' if ! _.include( _.keys(@routes),(window.location.hash || '').replace('#',''))
是否有这样做的更好的办法?
Is there a better way of doing it?
推荐答案
尝试添加该附加路由作为控制器的最后路线:
Try adding this additional route as the last route in your controller:
'*path': 'defaultRoute'
和再处理它是这样的:
defaultRoute: function(path) {
this.showListView();
}
这个假设名单路线是你的preferred默认。这应该工作,因为Backbone.js的匹配,以便路线,但始终匹配'图示'的路线。
This assumes the list route is your preferred default. This should work since Backbone.js will match the routes in order, but will always match the 'splat' route.
这篇关于在Backbone.js的控制器默认路由?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!