javascript - 使用路由器Angular 6通过按钮单击创建导航功能时出错
问题描述
我是 Angular 6 的新手,它是导航/路由,如果这听起来很明显,我很抱歉。
我正在尝试使用具有导航到登录页面的功能的按钮,但我不断收到此错误:
" 错误:未捕获(承诺中):错误:无法匹配任何路由。URL 段:'login' 错误:无法匹配任何路由。URL 段:'login' at ApplyRedirects.push../node_modules/@angular/router/fesm5 /router.js.ApplyRedirects.noMatchError "
我的 html 是:
<button ion-button (click) = "openLogin()" >Efetuar login</button>
我的路由器是:
import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import { LoginComponent } from './login/login.component';
const routes: Routes = [
{
path: 'login',
outlet: 'login',
component: LoginComponent
},
{ path: '', loadChildren: './tabs/tabs.module#TabsPageModule' }
];
@NgModule({
imports: [RouterModule.forRoot(routes)],
exports: [RouterModule]
})
export class AppRoutingModule {}
我一直在研究此事,只要路径对应于路由器中定义的路径,就不应该有任何问题,但我不断收到此错误。
解决方案
尝试以这种方式在您的导入中实现这一点:
RouterModule.forRoot(routes, {useHash: true});
代替:
RouterModule.forRoot(routes)
推荐阅读
- angular - 缺少所需的请求正文 Spring boot Angular
- mysql - 基于唯一多列结果集的查询表
- c# - 当 OnTriggerEnter() 播放声音时 Unity 编辑器冻结
- python - 熊猫数据框逐行比较中的 F1 分数
- php - PHP Filter html 选择选项值,如果它在数据库中找到
- spring-boot - 如何告诉 SpringBootApplication 加载 web.xml?
- flutter - 是否可以在 Navigator 堆栈中删除具有路由名称的特定路由?
- apache-spark - 在 org.apache.spark.sql.execution.datasources.orc.OrcColumnVector.getDecimal(OrcColumnVector.java:158)
- angular - 错误:您应该使用 $timeout 服务而不是默认的 window.setTimeout 方法
- autotools - 如何使 automake 对丢失的文件保持沉默?