Tôi đang vấp ngã qua dự án xương sống đầu tiên của mình và đang cố gắng cập nhật URL sau khi nhấp vào phần tử nút.Xương sống - Cập nhật URL từ chức năng xem
Tôi có thể đặt URL theo cách thủ công qua window.location.hash, nhưng tôi cho rằng đây không phải là cách chính xác. Bất cứ ai có thể cho tôi biết cách ưa thích để cập nhật URL là gì?
var AppView = Backbone.View.extend({
events: {
"click #loadProject": "filterProject",
},
filterProject: function(){
var projectID = $('#selectProject option:selected').val();
var orgID = 'test';
// Is there a better way to do this?
window.location.hash = '/'+orgID+'/'+projectID;
this.renderProject(orgID,projectID);
},
renderProject:function(orgID,projectID){
//Some code
},
});
//Routing
var PropertiesRouter = Backbone.Router.extend({
routes: {
"/:who/:project":"getProjects", //#/org/1
"/:who":"getOrganisation", //#/org
"*actions": "defaultRoute"
},
getProjects:function(who,project){
app.renderProject(who,project);
},
getOrganisation:function(who){
app.renderOrganisation(who);
},
defaultRoute: function(actions){
app.renderHomePage();
},
});
var app = new AppView();
//create router instance
var propertiesRouter = new PropertiesRouter();
//start history service
Backbone.history.start();
Cảm ơn!
Chỉ trong trường hợp bất kỳ ai khác đi qua điều này ... giải pháp là sử dụng propertiesRouter.navigate ("/ '+ orgID +'/'+ projectID +'", {trigger: true}); – Matt