簡體   English   中英

Backbone.js路由方法未調用

[英]Backbone.js route methods not getting called

我搜索了其他各種類似的StackOverflow問題,但似乎都沒有提供解決方案。 我有以下骨干路由​​器設置:

var AppRouter = Backbone.Router.extend({
routes: {
    ""           : "homeAction",
    "/portfolio" : "portfolioAction",
    "/about_us"  : "aboutUsAction",
    "/contact"   : "contactAction"
},
initialize: function  () {

},
homeAction: function () {
    alert("User has navigated home");
},
portfolioAction : function() {
    alert('user have navigated to portfolio');
},
servicesAction: function () {
    alert("User has navigated to services");
},
aboutUsAction: function () {
    alert("User has navigated to about us");
},
contactAction: function () {
    alert("User has navigated home");
},
requestQuoteAction: function () {
    alert("User has requested to submit a quote");
}
});

var app = new AppRouter();

$(function() {
    Backbone.history.start();
});

當我導航到mydomain.com/#時,按預期方式調用了homeAction路由。 但是,如果我嘗試導航到mydomain.com/#/portfolio,則不會發生任何事情。 知道為什么不調用此方法嗎?

在路線開始時刪除斜線應該可以。

var AppRouter = Backbone.Router.extend({
routes: {
    ""           : "homeAction",
    "portfolio" : "portfolioAction",
    "about_us"  : "aboutUsAction",
    "contact"   : "contactAction"
},
...

然后嘗試訪問例如mydomain.com/#portfolio。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM