2013-10-04 98 views
0

當前的路線我對這個網址在谷歌瀏覽器:F5刷新瀏覽器不會重新加載在durandaljs

http://mysite:7466/#lessonplanner 

然後我按F5刷新/重新加載當前的網站,但內容不reshown。我看到一個空白頁面。

在控制檯中我看到:路由未發現

這是我的路線是如何設置:

router.map([ 
{ route: 'lessonplanner', moduleId: 'viewmodels/lessonplanner', title: 'lesson planner', nav: true }]) 
       .buildNavigationModel(); 

什麼我錯了嗎?

+1

很難說。我的猜測是,當你直接加載'#lessonplaner'時,路由被定義在一個沒有命中的地方。嘗試將它向上移動。 – RainerAtSpirit

+0

你是對的,這條路線#lessonplanner只在本課程計劃器所屬的地方加載學校年份記錄時才加載......擊中F5正在執行整個shell.js,並且因爲schoolyear從未加載過,所以'route not發現'...你現在會建議什麼?實際上,用戶希望重新加載lessonplanner,這意味着我必須將加載的schoolyearId保存到localStorage。好吧,這是一個邊緣情況下,我不得不稍後處理,當我做登錄...感謝提示Rainer。 – Elisabeth

+0

如果您正在用Durandal構建單頁應用程序,則預計不必使用F5重新加載該頁面,除非確實有充分的理由,但是如果存在......我從來沒有聽說過... –

回答

0

這是一個典型的例子,我將lessionplanner分成一個模塊,並將其包含在視圖中,並將核心數據包含在其中。 然後重新加載實際視圖,如果鏈接正確,它將起作用。

+0

我不確定我是否正確理解你的答案。或者你知道我的情況,因爲我的lessionplanner已經是一個模塊。我無法將lessonplanner加載核心數據,因爲課程計劃器涉及必須在之前加載的學年。其實路線應該是這樣的:localhost:80/schoolyear/09-13-2013/lessonplanner。但是我仍然需要實現這種深層次的聯繫。 – Elisabeth

相關問題