繁体   English   中英

.Net Core 2.0 Angular SPA路由

[英].Net Core 2.0 Angular SPA Routing

我最近从.Net核心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正则表达式使用POSIX正则表达式,使用正则表达式来解析URI引用的潜在五个组成部分是很自然的,而且很平常。 * *下面的行是用于将*格式正确的URI引用分解为其组件的正则表达式。 * *

* ^(([^:/?#]+):)?(//([^/?#]))?([^?#])(\?([^#]))?(#(.))?
 *  12            3  4          5       6  7        8 9
 *
* *以上第二行中的数字仅用于增强可读性; 它们*指示每个子表达式的参考点(即,每个成对的*括号)。 我们将匹配子表达式的值称为$。 *例如,将上面的表达式匹配为*
\n  * http://www.ics.uci.edu/pub/ietf/uri/#相关\n  * 
*导致以下子表达式匹配:*
\n  * $ 1 = http:\n  * 2美元= http\n  * $ 3 = //www.ics.uci.edu\n  * 4美元= www.ics.uci.edu\n  * 5美元= / pub / ietf / uri /\n  * 6美元= \n  * 7美元= \n  * $ 8 =#相关\n  * 9美元=相关\n  * 
*其中表示该组件不存在,如上例中的查询组件*所示。 因此,我们可以*确定这五个组成部分的值为*
\n  *方案= $ 2\n  *权限= $ 4\n  *路径= $ 5\n  *查询= $ 7\n  *片段= $ 9\n  * 
* *对正则表达式进行了一些修改,以将* userInfo,domain和port与权限分开显示。 *修改后的版本产生*
\n  * $ 1 = http方案\n  * $ 2 = userInfo-\\\n  * 3美元= www.ics.uci.edu网域|  权威\n  * $ 4 =端口-/\n  * $ 5 = / pub / ietf / uri /路径\n  * $ 6 =查询没有?\n  * $ 7 =不含#的相关片段\n  * 

我真的不明白这一切是什么意思,或者是否有意义。 我也认为它可能是HMR,但是再次,这确实很新,无法理解为什么刷新或手动路由会导致问题

感谢您的帮助,我可以根据需要提供更多信息,只是不想让信息淹没,甚至走错了路。

我能够弄清楚这个问题。 热模块重新加载影响了F5刷新问题。 如果禁用我的HMR,则F5刷新有效。 出于某种原因,尽管HMR影响了MVC视图,但实际上没有,针对该问题的简单解决方案如下。

至于视图的MVC部分,我没有正确的路线。 配置的路由为{controller} / {action},而我只是在输入控制器。

如果其他人有什么见识,我很想听听!

谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM