gpt4 book ai didi

angular - Dart/Angular 2:Pub在页面重新加载时转换404

转载 作者:行者123 更新时间:2023-12-03 02:51:15 26 4
gpt4 key购买 nike

有一些类似的问题,但我尚未找到解决该问题的任何方法。

假设我使用

pub serve --port 13371



为了在本地启动我的Angular 2 / Dart应用程序。在基本文件中,我有一个配置如下的路由器:
@RouteConfig(const [
const Route(
path: '/home',
name: 'Home',
component: HomeComponent,
useAsDefault: true
),
const Route(
path: '/about',
name: 'About',
component: AboutComponent
)
])
class AppComponent {}

和这样的模板:
    <nav>
<ul>
<li>
<a [routerLink]="['Home']">Home</a>
</li>
<li>
<a [routerLink]="['About']">About</a>
</li>
</ul>
</nav>

在Dartium或其他浏览器中,我转到 http://localhost:13371/,它将我重定向到 http://localhost:13371/home。现在每当我按 重新加载时,我都会收到 404错误

原因是服务器配置。当 Angular 更改URL时,它知道去哪里以及如何重写URL。但是对于服务器 /home/about不存在。

但是,我的问题是,如何配置 pub以便始终将其重定向到index.html,以便可以刷新并转发到子站点?是否有一些配置要添加到pubspec.yaml?

最佳答案

要么添加

bootstrap(AppComponent, [
/* other providers */,
provide(LocationStrategy, useClass: HashLocationStrategy),
])

或使用支持重写的Nginx之类的代理。 pub本身不支持它。

另请参阅 https://pub.dartlang.org/packages/pub_serve_rewrites

关于angular - Dart/Angular 2:Pub在页面重新加载时转换404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41965060/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com