【问题标题】:Use Tab key to set focus on an angular material Tab使用 Tab 键将焦点设置在有角度的材质上
【发布时间】:2020-09-04 21:55:22
【问题描述】:

我是 Angular-Material 的新手。当使用 tab 键将焦点放在一个材料选项卡中的按钮(添加完成)到另一个角度材料选项卡时,如何将焦点设置在 Angular 材料选项卡上。

AppResource.Component.html

<button mat-button>
Add accomplishment
<button> 

ResourceDetail.component.html

<mat-tab-group
    <mat-tab label ="engagment">
            <app-resource-view> <app-resource-view>
     </mat-tab>
    <mat-tab label="Skill" >
    </mat-tab>
</mat-tab-group>

【问题讨论】:

    标签: javascript angular angular-material


    【解决方案1】:

    根据您的说明,我了解到您需要在单击子组件中的按钮时更改父组件的选项卡。

    为此,您可以使用服务来收听主题。

    这样你就可以从你的子组件中说出一些东西,然后在你的父组件上获取值。

    为您服务

    listener: Subject<boolean> = new Subject;
    

    这是允许您在两个组件之间聊天的主题

    在您的子组件上,当您单击按钮时,您需要对您的主题说您想做某事。例如,Subjectboolean 组成,但您可以由stringnumber 或任何您想要的组成。

    chat(){
      this.resourceService.listener.next(true)
    }
    

    然后在您的父组件上,您可以检查主题是否已更改并在更改后执行某些操作。

    selected: number = 0
    
    ngOnInit(){
      this.resourceService.listener.subscribe((val) => {
        if (val){
          this.selected = 1
        }
      })
    }
    

    这里,selectedmat-tab-group 的标签的索引

    我创建了一个stackblitz 以便更好地理解

    【讨论】:

    • 谢谢,为了清楚起见,我编辑了问题,我的意思是使用 tab 键,将焦点设置在 Angular-material 选项卡上。我正在寻找一个简单的解决方案,最好不涉及服务。
    • 好吧,tab键是什么意思?并且还通过将焦点设置在 Angular 材质选项卡上?选项卡键是所选选项卡的索引?设置焦点就像更改第二个选项卡的选定选项卡?
    • 计算机键盘上的 Tab 键。不确定如何使 Angular-Material 选项卡上的设置焦点更清晰。也许我的意思是材料标签标签。所以我想将选定的标签设置为第二个。
    • 哦,好吧,我明白了,我会尝试用这个来做一个堆栈闪电战,你所需要的只是在我们使用 tab 键时更改选定的选项卡,所以?该按钮没有与选项卡相关的操作?
    猜你喜欢
    • 2018-06-06
    • 1970-01-01
    • 1970-01-01
    • 2020-03-20
    • 2020-11-22
    • 1970-01-01
    • 2017-06-27
    • 2019-03-04
    • 1970-01-01
    相关资源
    最近更新 更多