angular - 如何将我的路线绑定(bind)到 angular-material2 中的步进器?

标签 angular angular-material2

我正在使用 Stepper component angular-material2,我希望这些步骤反射(reflect)在我的应用程序的 URL 路由中,以便用户可以共享 URL 链接并立即进入正确的步骤。可能吗?

最佳答案

您需要从'@angular/common' 注入(inject)并使用定位服务:

1) 改变URL调用定位服务的go函数。示例:

if (this.stepper.selected.label === 'subscriber') { 
    this.location.go('./enrollment/subscriberInfo');
}

2) 在 URL 更改调用位置服务的订阅者功能后更改步进器。示例:

this.location.subscribe( () => {
    if (this.location.isCurrentPathEqualTo('/enrollment/subscriberInfo')) {
        this.stepper.selectedIndex = 0;
    }
    if (this.location.isCurrentPathEqualTo('/enrollment/payment')) {
        this.stepper.selectedIndex = 1;
    } 
    if (this.location.isCurrentPathEqualTo('/enrollment/agreement')) {
        this.stepper.selectedIndex = 2;
    }
});`

仅供引用,我使用了 @Output() animationDone: EventEmitter<void>更改 URL 的步进器。

关于angular - 如何将我的路线绑定(bind)到 angular-material2 中的步进器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47818129/

相关文章:

Angular Material 对话框并禁用可选项卡元素的自动聚焦

html - Material 2 按钮 Css 样式 Angular 5

javascript - 如何在 Angular 4 中显示来自自定义验证器函数的自定义错误消息?

javascript - Angular 6 : Real time data

angular - import * as angular from 'angular' inside app.module.ts 文件

Angular 2 Material Design 具有分层缩进的多选下拉菜单

Angular Material MatChipList MatError 在没有焦点的情况下设置 errorstate 时不可见

html - 如何根据点击以 Angular 使用css3进行动画处理?

css - 在不同的组件中以不同的方式覆盖 Angular Material CSS

angular - 如何使用 Material 2 工具栏