【发布时间】:2026-01-09 16:50:01
【问题描述】:
我最近从 .Net core 2.0 SPA 模板生成了一个新的 Angular SPA 项目。我是 Angular/Typescript 和 HMR 的新手,我认为这可能是问题的一部分。
几乎所有东西都已经工作了一段时间,直到最近我注意到,如果我用 F5 刷新任何页面或手动输入 URL,我会得到一个写有“值”字样的白页。基本上,我能够路由我的页面的唯一方法是单击导航栏上的链接。我有想要访问的 MCV 视图来管理用户、产品和角色。我到达那里的方式是手动输入 URL 示例
我输入 'localhost:53212/roles' 并得到该值页面。此外,在任何 SPA 视图中,如果我点击刷新 f5,我会得到相同的具有价值的白页。在 chrome 调试器中检查带有值的页面后,我注意到它包含在一个“pre”标签中,当我进行搜索时,可以在 Vendor.js 文件中找到该标签,当我导航到“pre”的所有实例时,我得到这段代码
/**
* 用于将 URI 分解为其组成部分的正则表达式。 * * {\@link http://www.gbiv.com/protocols/uri/rfc/rfc3986.html#RFC2234} 说 * 由于“第一场比赛获胜”算法与“贪婪”算法相同 * POSIX正则表达式使用的消歧方法,自然而然 * 使用正则表达式来解析潜在五是司空见惯的事 * URI 引用的组成部分。 * * 以下行是用于分解 a 的正则表达式 * 对其组件的格式良好的 URI 引用。 * *
* ^(([^:/?#]+):)?(//([^/?#]))?([^?#])(\?([^# ]))?(#(.))? * 12 3 4 5 6 7 8 9 * * * 上面第二行的数字只是为了便于阅读;他们 * 表示每个子表达式的参考点(即每对 * 括号)。我们将与子表达式匹配的值称为 $。 * 例如,将上面的表达式匹配到 * * http://www.ics.uci.edu/pub/ietf/uri/#Related * * 导致以下子表达式匹配: * * $1 = http: * $2 = http * $3 = //www.ics.uci.edu * $4 = www.ics.uci.edu * $5 = /pub/ietf/uri/ * $6 = * 7 美元 = * $8 = #相关 * $9 = 相关 * * 其中表示组件不存在,与 * 上例中查询组件的情况。因此,我们可以 * 将五个组件的值确定为 * * 方案 = 2 美元 * 权限 = 4 美元 * 路径 = $5 * 查询 = $7 * 片段 = 9 美元 * * * 正则表达式已稍作修改,以暴露 * 用户信息、域和端口与权限分开。 * 修改后的版本产生 * * $1 = http 方案 * $2 = 用户信息 -\ * $3 = www.ics.uci.edu 域名 |权威 * $4 = 端口 -/ * $5 = /pub/ietf/uri/ 路径 * $6 = 不带查询? * $7 = 没有#的相关片段 *我真的不明白这一切意味着什么或是否相关。我也认为它可能是 HMR,但同样,这真的很新,无法理解为什么刷新或手动路由会导致问题
感谢您的帮助,我可以根据需要提供更多信息,只是不想被信息淹没甚至无法走上正轨。
【问题讨论】:
标签: javascript angularjs routing