Ionic 4 beta 18 - ion-item и ion-button с routerLink не меняют маршрут - PullRequest
0 голосов
/ 14 декабря 2018

Я только что обновился с ionic 4 beta 17 до 18, и было внесено серьезное изменение в <ion-item> и <ion-button>. href был заменен на routerLink .

Я добавил это в свой код, и теперь маршрутизация больше не работает.Большую часть времени компилятор выдает ошибки и сообщает, что routerLink не существует в ion-item.

Что я сделал не так?Или это угловой?

"@ionic/angular": "~4.0.0-beta.18",
"@ionic/core": "~4.0.0-beta.18",
"@angular/core": "^7.1.3",
"@angular/router": "~7.1.3",

<ion-item text-wrap class="nav-item" routerDirection="forward" 
        [routerLink]="p.url"
        *ngFor="let p of listOfPages; let i = index"
        [class.active-item]="checkActivePath(p.url)"
        [class.last-item]="i === (listOfPages.length - 1)">
    <ion-label class="nav-label">
        <ion-img [src]="p.icon" class="nav-icon"></ion-img>
        <div class="text-block">
            {{ p.title }}
        </div>
    </ion-label>
</ion-item>

Ответы [ 3 ]

0 голосов
/ 16 декабря 2018

Импорт RouterModule в файле модуля модуля, в котором находится шаблон (модуль, в котором используется routerLink):

import { RouterModule } from '@angular/router';
@NgModule({
    imports: [
        // ...
        RouterModule,
    ]
0 голосов
/ 17 декабря 2018

Итак, вот что наконец-то сработало для меня:

  1. Обязательно включите RouterModule в каждый модуль.
  2. В каждом вложенном модулеЯ использовал

    const routes: Routes = [{
        path: '',
        component: AboutUsPage
    }];
    
  3. Я также импортировал RouterModule.forChild(routes) туда.

  4. Для маршрутов я добавил / перед путем.Как '/home'
  5. В app-routing.ts Я использовал {path: 'about-us/:id', component: AboutUsPage},.
0 голосов
/ 14 декабря 2018

Может отсутствовать "после routerDirection?

routerDirection="forward

РЕДАКТИРОВАТЬ: когда вы используете ионный компонент, вы должны использовать href. RouterLink для неионных компонентов.

...