我正在构建一个 Angular 2 应用程序,我正在使用 html5 路由。我偶然发现了嵌套路由的问题。问题是,当我定义/route1
时,它可以正常工作,但在/route1/child-route
的情况下,它不起作用。
我使用 browserSync
来提供文件,并使用中间件重定向到 index.html。到目前为止,我已经看到问题出在使用相对 url 的编译 TypeScript 文件和 SystemJS 上,例如,当请求app.js
时,服务器正在查找位置 /route1/app.js
中的文件。有人可以帮助我解决这个问题吗?
https://angular.io/docs/ts/latest/guide/router.html
在
<head>
标记之后添加基本元素。如果app
文件夹是应用程序根目录(就像我们的应用程序一样(,请完全按照此处所示设置href
值。
<base href="/">
或者添加
import {provide} from 'angular2/core';
import {APP_BASE_HREF} from 'angular2/router';
bootstrap(AppComponent, [
ROUTER_PROVIDERS,
provide(APP_BASE_HREF, {useValue : '/' });
]);
在您的引导程序中。