2013-10-04 99 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

相关问题