SelectedIndex не работает для вкладок материала mat-tab-nav-bar angular

Я написал код вкладок, как показано ниже

<nav mat-tab-nav-bar [selectedIndex] = "0">
    <a mat-tab-link 
        *ngFor = "let link of navLinks; let i = index;"
        [routerLink] = "link.path"
        routerLinkActive #rla = "routerLinkActive"
        [active] = "rla.isActive">
        <div class = "link-tab-label">{{link.label}}</div>
        <mat-icon class = "link-tab-close" (click) = "closeTab(i)">close</mat-icon>
    </a>
</nav>

Когда я запускаю проект, у меня возникает проблема, показанная ниже.

compiler.js:485 Uncaught Error: Template parse errors:
Can't bind to 'selectedIndex' since it isn't a known property of 'nav'. ("
        <mat-card>
          <mat-card-content>
              <nav mat-tab-nav-bar [ERROR ->][selectedIndex] = "0">

Как использовать selectedIndex с mat-tab-nav-bar?

Ошибка верна, если вы специально не настроили декоратор @input для вашего компонента nav.

Michael Doye 15.05.2018 13:37

@ Und3rTow Я хочу добиться ниже функциональности stackoverflow.com/questions/41937176/…. Но я использую mat-tab-nav-bar. Я не знаю, как установить декоратор ввода для selectedIndex.

Sivakumar Tadisetti 15.05.2018 13:40

тогда вы можете использовать <mat-tab-group>, который принимает selectedIndex, подробнее читайте в документы

Michael Doye 15.05.2018 13:43

Я хочу загрузить содержимое вкладки на основе URL-адреса, поэтому я использую mat-tab-nav-bar

Sivakumar Tadisetti 15.05.2018 13:49
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
4
3 553
1

Ответы 1

mat-tab-nav-bar не имеет свойства selectedIndex, а mat-tab-link внутри mat-tab-nav-bar на самом деле не являются вкладками. mat-tab-nav-bar «предоставляет пользовательский интерфейс в виде вкладок для навигации между маршрутами». Чтобы установить активную «вкладку» или ссылку, вы устанавливаете активный маршрут через маршрутизатор вашего приложения. «Вкладка» отображается как активная с помощью директивы routerLinkActive и свойства active.

Привет. Не могли бы вы привести пример?

Kathrine Hanson 04.06.2020 14:30
material.angular.io/components/tabs/…
G. Tranter 04.06.2020 21:47

[active] = "rla.isActive", чтобы с этим свойством я мог вместо rla.isActive определить вкладку, которая должна быть активной по умолчанию после обновления или возврата с другого маршрута? это будет работать?

Kathrine Hanson 05.06.2020 07:52

Да - active - это вход для директивы mat-tab-link для управления внешним видом. Если вы используете маршрутизацию, в примере показано, как привязать active к вашему маршрутизатору с помощью директивы routerLinkActive и переменной шаблона, чтобы «вкладка» выглядела активной, только если ее маршрут активен. Это предпочтительнее, чем самостоятельное управление состоянием, поскольку маршрутизатор уже отслеживает состояние.

G. Tranter 05.06.2020 18:41

Другие вопросы по теме