【发布时间】:2013-03-25 05:25:15
【问题描述】:
在一个非常简单的主干应用程序中,我尝试操纵路由,我让它们正常工作,但我只是想知道为什么指向主页的链接实际上会重新加载页面,而没有其他路由重新加载。
这是我的路由器:
App.Router = Backbone.Router.extend({
routes: {
'': 'index',
'trips': 'trips',
'trips/new': 'newTrip',
'trips/:id': 'showTrip'
},
index: function(){
App.trips = new App.Collections.Trips ;
App.trips.fetch().then(function(){
new App.Views.App({ collection: App.trips });
});
},
trips: function(){
console.log('All trips') ;
},
newTrip: function(){
console.log('new trip') ;
var new_trip = new App.Views.Trip.New ;
$('#content').empty().append(new_trip.el) ;
},
showTrip: function(id){
console.log('trips id:' + id) ;
}
});
【问题讨论】:
-
链接是什么样的,它们是如何构造的?如果他们在视图代码中,您可以包含什么代码?
-
您是否添加了事件处理程序以防止默认行为并调用“Backbone.history.navigate(...)”?除非您明确执行其他操作,否则链接将正常运行。
-
@StuartM 我的主页链接纯粹是:`主页
标签: backbone.js router