web-dev-qa-db-ja.com

angular 7でルートパラメータをnullとして取得する

ルートパラメータをnullとして取得できません。私はangular7を使用しています。以下のコードを見つけてください

HeaderComponent tsファイル

    import {Router, ActivatedRoute} from '@angular/router';
    constructor(private httpService: HttpClient, private router: Router, private activatedRoute: ActivatedRoute) {
             this.getNewsSelectedFromRouteParam();
        }
    getNewsSelectedFromRouteParam() {
            alert();
            let id = this.activatedRoute.snapshot.paramMap.get('typeId');
            alert(id);
        }
getNewsByCountry(newsTypeSelected: any) {
        this.router.navigate(['/news',newsTypeSelected]);
        this.getNewsSelectedFromRouteParam();
    }

ヘッダーhtml

<div class=" dropdown-toggle" data-toggle="dropdown">
                XXX
            </div>
            <div class="dropdown-menu">
                <div *ngFor="let cr of country" class="dropdown-item"
                    (click)="getNewsByCountry(cr.value)" >{{cr.name}}</div>
            </div>

アプリルーティングtsファイル

 const routes: Routes = [
        { path: 'news/:typeId', component: XxxComponent },
    { path: '**', component: XxxComponent }
    ];
3
Madhavi

「XxxComponent」から呼び出す必要がある「HeaderComponentts」でそのパラメータを取得しようとしています。 XxxComponenttsファイルにそのルートパラメータコードを追加して、期待どおりに機能するようになりました。ルートパラメータを取得できます。

0
Madhavi

あなたも試すことができます

let id = this.activatedRoute.snapshot.queryParams.id

すべてのルートで共有されるクエリパラメータを取得するには

0

(クリック)でgetNewsByCountryを呼び出します。おそらく、cr.valueはnullですが、cr.valueとは何ですか? IDですか?

0
RikG93