2016-04-29 35 views
0

我試圖在我的淘汰賽中實施pager.js SPA。 這是工作,有點,但是我遇到一些奇怪的行爲,即使我已經按照官方指導..導航問題與pager.js

我的頁面結構看起來像這樣。

<div data-bind="page: { id='start', title='index'}"> 
</div> 

<div data-bind="page: { id='mainPage1', title='mainPage1'}"> 
</div> 

//implement deep nav?? 
<div data-bind="page: { id='mainPage2', title='mainPage2'}"> 
    //Grid page 
    <div data-bind="page: { id='start', title='grid'}">  
     //Error here - page dont exist? | URL output: mainPage2/detail 
     <a data-bind="page-href: '../detail' ">go to detail page.</a> 
    </div> 

    //Detail page 
    <div data-bind="page: { id='detail', title='detail'}"> 
    </div> 
</div> 

而且當我輸入URL,我可以通過這個網址導航到mainPage2: /mainPage1/dsjak/adsPae1/madaadsnPage1/mainPage2

Aslong作爲URL的最後一部分是有效的它會導航到頁面的這一部分,這是打算的嗎?

不知道這能有什麼與我的後端路由,但它看起來像這樣..

routes.MapRoute(
      name: "Default", 
      url: "{*catchall}", 
      defaults: new { controller = "Home", action = "Index" } 
     ); 

我也使用require.js ..

+0

這不回答你的問題,但是你可能要採取一看就是被在[本GitHub庫(HTTPS所做的工作:// github上的.com/Profiscience/KO-組件路由器)。 –

回答

0

你的語法都錯了

eg id='start'變化id:'start'

應該

<div data-bind="page: { id:'start', role: 'start', title:'index'}">start</div> 

<div data-bind="page: { id:'mainPage1', title:'mainPage1'}">page 1</div> 

<div data-bind="page: { id:'mainPage2', title:'mainPage2'}"> 
    page2 
    <div data-bind="page: { id:'start', title:'grid'}">  
     //Error here - page dont exist? | URL output: mainPage2/detail 
     <a data-bind="page-href: '../detail' ">go to detail page.</a> 
    </div> 

//Detail page 
    <div data-bind="page: { id:'detail', title='detail'}"></div> 
</div>