.Net Core 2.0角度SPA路由

时间:2017-10-15 13:52:37

标签: javascript angularjs routing

我最近从.Net core 2.0 SPA模板生成了一个新的Angular SPA项目。我是Angular / Typescript和HMR的新手,我认为这可能是问题的一部分。

大多数情况下,所有内容都已经工作了一段时间,直到最近我注意到如果我使用F5刷新任何页面或手动输入URL,我会得到一个白色页面,其中包含" Value"书面。基本上,我能够路由我的页面的唯一方法是单击导航栏上的链接。我有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 = #Related
 *    $9 = Related
 * 
 * where表示该组件不存在,因为  *上例中查询组件的大小写。因此,我们可以  *确定五个组件的值为  *
 *    scheme    = $2
 *    authority = $4
 *    path      = $5
 *    query     = $7
 *    fragment  = $9
 * 
 *  *正则表达式已经稍微修改以暴露  * userInfo,域和端口与权限分开。  *修改后的版本产生  *
 *    $1 = http              scheme
 *    $2 =        userInfo -\
 *    $3 = www.ics.uci.edu   domain     | authority
 *    $4 =        port     -/
 *    $5 = /pub/ietf/uri/    path
 *    $6 =        query without ?
 *    $7 = Related           fragment without #
 * 

我真的不明白这一切意味着什么,或者它是否相关。我也认为它可能是HMR但是又一次,对此非常新,并且无法理解为什么刷新或手动路由会导致问题

感谢您提供任何帮助,我可以根据需要提供更多信息,只是不想压倒信息,甚至没有走上正轨。

1 个答案:

答案 0 :(得分:0)

我能够解决这个问题。热模块重新加载正在影响F5刷新问题。如果我禁用HMR,那么F5刷新工作。出于某种原因,我虽然HMR正在影响MVC视图,但事实并非如此,简单的解决方案就在下面。

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

如果其他人有一些见解,我很乐意听到它!

由于