用户可以从许多不同的网址来到我的SPA。
/page1
/page2
/page3
我托管此应用的网络服务器受到保护。并且用户案例已经出现在某些页面上,我们想要关闭保护。
所以我想要/ p / page1 /p/page2
之类的东西,将是受保护的页面。如果用户尝试在不记录的情况下访问它们,则会将它们重定向到登录页面。否则,如果尝试访问/ u / page3,他们将能够加载页面。在加载页面之后,用户当然可以访问任何spa页面,那时我会在进行服务请求时检查是否已登录。但是我希望通过在Web服务器上设置保护层来节省时间并快速完成任务。
问题在于,角斗士似乎没有使用/ p / page1的路径。而且我也尝试过/ p与子页面1和页面2,似乎没什么用。如何设置第一个目录与任何组件关联的路径,它只是出于组织目的。
编辑:
我的路由器
export const appRoutes: Routes = [
{ path: '', children:[
{ path: 'u', children:[
{ path: 'landing', component: Landing }
]},
{ path: 'p', component: Enroll, children:[
{ path: 'enroll', component: Enroll },
{ path: 'manage', component: Manage },
]}
] }
];
/u/landing will not work.
/p/enroll will not work.
/p will work though.
自动生成html,至少在包含js文件时,js文件没有被正确获取。
<body cz-shortcut-listen="true">
<!--#include file="../assets/test.html"-->
<div class="hp-main-container">
<!--<enroll-header>Header Loading...</enroll-header>-->
<app-root>Loading...</app-root>
</div>
<script type="text/javascript" src="inline.bundle.js"></script><script type="text/javascript" src="styles.bundle.js"></script><script type="text/javascript" src="vendor.bundle.js"></script><script type="text/javascript" src="main.bundle.js"></script>
</body>
ERROR:
https://my.site.com:80/p/main.bundle.js 404 ()
修复:
<base href="./">
已更改为
<base href="/">