Javascript 木偶网批准者,无法导航到正确的URL

Javascript 木偶网批准者,无法导航到正确的URL,javascript,backbone.js,url-routing,marionette,Javascript,Backbone.js,Url Routing,Marionette,我正在浏览David Sulc的书Backbone.marionete.js中的路由示例:温和的介绍 如您所见,如果历史片段为空,它将触发contacts:list事件,该事件将呈现联系人列表。然而,它根本不会重定向,我发现片段以某种方式预设为“联系人”,因此事件根本不会被触发。我也曾遇到过这样的情况,最初片段是空的,呈现了所有内容,url也正确地更改了,但在刷新时片段仍然是“联系人”,再次没有呈现任何内容 ContactsApp.Router = Marionette.AppRouter.

我正在浏览David Sulc的书Backbone.marionete.js中的路由示例:温和的介绍

如您所见,如果历史片段为空,它将触发contacts:list事件,该事件将呈现联系人列表。然而,它根本不会重定向,我发现片段以某种方式预设为“联系人”,因此事件根本不会被触发。我也曾遇到过这样的情况,最初片段是空的,呈现了所有内容,url也正确地更改了,但在刷新时片段仍然是“联系人”,再次没有呈现任何内容

 ContactsApp.Router = Marionette.AppRouter.extend({
        AppRoutes: {
            "contacts": "listContacts"

        }
    });

ContactManager.on("contacts:list", function () {
        ContactManager.navigate("contacts");
        API.listContacts();

    });

这是处理事件的代码。有什么问题吗?谢谢。

我想有些代码丢失了。我希望在路由器中找到类似的东西:

var myController = {
    listContacts: function () {
        ContactManager.trigger("contacts:list");
    }
};

ContactsApp.Router = Marionette.AppRouter.extend({
    controller: myController,
    appRoutes: {
        "contacts": "listContacts"
    }
});
请注意,
appRoutes
以小写a开头


现在,路由
contacts
将调用控制器的
listContacts
方法并触发
ContactManager.on(“contacts:list”)…
回调,运行适当的API方法。

我的答案有助于解决问题吗?谢谢你的答案。看来我在代码的其他地方出错了,并成功地调试了它。
var myController = {
    listContacts: function () {
        ContactManager.trigger("contacts:list");
    }
};

ContactsApp.Router = Marionette.AppRouter.extend({
    controller: myController,
    appRoutes: {
        "contacts": "listContacts"
    }
});