Angular 角度8-URL使用routerLink加载,但不';在本地主机的浏览器中直接访问时不显示
我已经开发了Angular 8应用程序,我正在使用routerLink导航组件,这些组件工作正常,没有任何问题,但是当我直接在浏览器中输入相同的URL时,它不会显示任何内容,在控制台中,我看到的错误如下所示 例如,我打开主页,并在此处添加了routerLink,我将能够成功查看,但如果我直接在ULR中输入URL,则不会显示任何内容 我已经处理了app-routing.model.tsAngular 角度8-URL使用routerLink加载,但不';在本地主机的浏览器中直接访问时不显示,angular,angular-routing,angular-routerlink,routelink,Angular,Angular Routing,Angular Routerlink,Routelink,我已经开发了Angular 8应用程序,我正在使用routerLink导航组件,这些组件工作正常,没有任何问题,但是当我直接在浏览器中输入相同的URL时,它不会显示任何内容,在控制台中,我看到的错误如下所示 例如,我打开主页,并在此处添加了routerLink,我将能够成功查看,但如果我直接在ULR中输入URL,则不会显示任何内容 我已经处理了app-routing.model.ts const routes: Routes = [ { path: 'home', co
const routes: Routes =
[
{ path: 'home', component: HomeComponent },
{ path: 'about', component: AboutComponent },
{ path: '**', redirectTo: '/home', pathMatch: 'full' }
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
我有header.component.ts来处理导航栏,所以我添加了
在header.component.html中
然后我在app.component.ts中包含了header.component.ts的选择器
在服务器上,我们可以使用哈希策略进行路由
在路由文件中,只需将RouterModule.forRoot(路由)
替换为RouterModule.forRoot(路由,{useHash:true})
对于apache服务器,您可以添加.htaccess文件
重新编写引擎打开
#如果请求了现有资产或目录,请按原样转到该资产或目录
RewriteCond%{DOCUMENT_ROOT}%{REQUEST_URI}-f[或]
重写cond%{DOCUMENT\u ROOT}%{REQUEST\u URI}-d
重写规则^-[L]
#如果请求的资源不存在,请使用index.html
RewriteRule^/index.html
这可能有点奇怪,但是我在一个cssclass=“class class2”中有一个尾随空格,你能分享一下你的AppComponent的模板吗?你好,@WillAlexander我已经详细更新了这个问题,因为它有点解释性,谢谢!!我看到的错误是加载资源失败:当我直接访问URL时,控制台中的服务器响应状态为404(未找到)
。您是否尝试重新启动开发服务器?您是否修改了base href
?你有没有试过把你的路由器插座
放在AppComponent模板中,这样会更有意义?是的,我试过把路由器插座放在app.component中,还有``放在index.html文件中,还是一样的问题简单、有效的解决方案谢谢你,在谷歌上搜索了很多次后,它解决了我的问题。