我正在尝试将durandal.js用于单页面架构,
我已经有了一个应用程序,我在其中加载了用于单页面体系结构的div = old方法中的所有页面,
我想做的是,当我点击页面时,我需要打开hotspa页面,
现在我写的东西是这样的。www.xyz.com#/details,
其中# details是我的durandal视图页面!
当我将详细信息放入<a> herf....#/details时,我得到了如下错误:http://postimg.org/image/hoeu1wiz5/
但是当我用相同的url刷新时,它工作得很好,我可以看到视图了!
我不知道为什么会出现这个错误
发布于 2013-08-02 19:36:24
如果你使用的是Durandal2.0之前的版本,你会得到这样的结果,因为在你的Shell.js中,你没有定义路由器,或者你对路由器模块的位置有一个错误的定义,或者你可能是在你的索引中定义脚本,而不是通过require.js“需要它们”
第一-检查shell.js,在顶部你应该有一个定义函数,它应该像这样说/做一些事情,并且应该像这样向视图公开它-
define(['durandal/plugins/router'], function (router) {
var shell = {
router: router
};
return shell;
};第二-检查并确保' durandal / plugins / router‘指向解决方案资源管理器中的正确位置,在本例中是app >durandal>plugins>router。如果不是,或者如果没有路由器,可以使用nuget添加。
第三-确保你没有在你的索引或shell html页面中加载脚本。在使用require.js时,您需要将加载到Require语句中的任何脚本移动到Require语句中,才能使一切正常运行。在其他地方加载匿名定义()模块时,通常会出现'Mismatched anonymous () module‘错误- http://requirejs.org/docs/errors.html#mismatch
https://stackoverflow.com/questions/18009986
复制相似问题