Javascript 主干路由器初始化,但不触发事件
我有一个复杂的,多层次的应用程序,我想用主干路由器导航,但它不能像我预期的那样工作 应用程序的地址不在根目录下 像这样: 我想使用BB的路由 下面是一些代码:Javascript 主干路由器初始化,但不触发事件,javascript,backbone.js,routes,Javascript,Backbone.js,Routes,我有一个复杂的,多层次的应用程序,我想用主干路由器导航,但它不能像我预期的那样工作 应用程序的地址不在根目录下 像这样: 我想使用BB的路由 下面是一些代码: $(function () { var SayfaController = Backbone.Router.extend({ routes: { "": "home", "sayfa/:sayfaNo": "sayfa" }, i
$(function () {
var SayfaController = Backbone.Router.extend({
routes: {
"": "home",
"sayfa/:sayfaNo": "sayfa"
},
initialize: function () {
console.log('THIS WORKS');
},
home: function () {
console.log('THIS DONT FIRE');
},
sayfa: function (sayfa) {
console.log("NEITHER THIS FIRES");
console.log(sayfa);
}
});
var sayfaController = new SayfaController();
Backbone.history.start({pushState: true});
....
});
初始化方法可以工作,但
当我单击以下链接时,事件不会触发:
<a href="http://www.domain.com/App/#/sayfa/6">Click</a>
或更改浏览器导航栏
我做错了什么你需要初始化函数吗?这可能会取代路由器的主干设置,这可能是其他功能/视图无法启动的原因 乍一看,您需要指定应用程序的根目录,因为它不是从域的根目录提供的。请参阅主干文档RE:Backbone.history: 如果您的应用程序不是从您的 域,一定要告诉历史根真正在哪里,作为 选项:主干.history.start({pushState:true,root: “/public/search/”})
尝试
Backbone.history.start({pushState:true,root://App/“})代码>我不知道如何让它在类似的URL上工作
http://www.domain.com/App/#/sayfa/6
但对于下面的那个种,它是有效的
http://www.domain.com/App#sayfa/6
http://www.domain.com/App
使用
下面是JSFIDLE获取链接到app@kinakuta这是一个例子:)www.domain.com不是我的:)是Editor
初始页面吗?如果索引页是http://www.matbuu.bizim/
访问此url时,运行主页将运行。当http://www.matbuu.bizim#sayfa/123
。除非您在使用#
时进行了修改,否则很抱歉我编辑了link@ashley最初的页面是我想运行并获得6的参数我不认为这会崩溃主干,但我尝试了。。。不变
Backbone.history.start({
root : "/App"
});