Angular 2 在路由器导出中设置默认内容

标签 angular

我想在路由器 socket 内设置一些默认文本,直到它被填充。

我有一个父组件,它将在该页面的路由器导出中显示子路由组件。

有 2 个按钮,单击时将使用子组件填充路由器导出。我如何将内容放入路由器 socket 内,例如。 “单击一个选项以显示数据”然后单击按钮后此消息将清除并且子组件将显示在路由器导出中?

<div class="container pt-3">
    <div class="clearfix">
        <div class="btn btn-outline-success float-left"
            routerLink="/unpaid/people">
            View People
        </div>
        <div class="btn btn-outline-success float-right"
            routerLink="/unpaid/bills">
            View Bills
        </div>
    </div>
</div>
<router-outlet>Click an options to display the data</router-outlet>

编辑 这是我的路线

path: 'unpaid', component: UnpaidBillsComponent,
    children: [
      {path: 'people', component: UnpaidPeopleComponent},
      {path: 'bills', component: UnpaidBillListComponent}
    ]

最佳答案

default text inside the router-outlet until it is populated

首先,您的假设是错误的,内容不是插入内部 outlet,而是下方


您不能在模板中设置默认内容,但您可以设置包含您的默认内容的默认路由。只需使用 path: '' 并将 component 与您的“默认”模板一起使用。


使用您需要的“默认”模板创建一个组件:

@Component({template: `Default template here`})
export class DefaultTemplateComponent {}

并将其添加到您的 route 。

children: [
  {path: '', component: DefaultTemplateComponent},
  {path: 'people', component: UnpaidPeopleComponent},
  {path: 'bills', component: UnpaidBillListComponent},
]

关于Angular 2 在路由器导出中设置默认内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46860999/

相关文章:

angular - 如何在 Angular 7 中设置路由的默认查询参数?

node.js - Npm 安装失败(无法解决依赖关系)

Angular 2 ngIf 和 ngSwitch 用于简单登录

javascript - Angular - 使用可观察对象从静态 Web 服务中删除数据

angular - 如何捕捉 Material Datepicker 月份分页事件?

javascript - Angular translate provider - 有没有办法替换一般变量?

javascript - 如何用 Angular 刷新图像

angular - 从一个来源加载所有组件和提供程序以进行 Angular 单元测试

javascript - 如何 "mount"Angular 2 模块在路由层次结构中某个点的路由

javascript - typescript 滚动位置