相同的新闻详细信息,在Ionic 4(Newsapi)上单击不同的新闻

时间:2019-03-08 10:50:12

标签: ionic4 news-feed

我在这里关注一个教程:https://www.youtube.com/watch?v=NJ9C7iY9350。无法理解为什么我要点击新闻,新闻详情始终是相同的,我正在检查我的代码及其与github中的相同。但是不知道为什么看不到每个新闻的新闻细节,只是我点击的第一个新闻。

附加我的代码:

新闻


TS

    goToNews(article) {
    this.newsService.currentArticle = article;
    console.log(article)
    this.router.navigate(['/tabs/news-detail']);
}

    getNews() {
    this.newsService.getData(`top-headlines?countries=${this.selectedCountry}&category=technology`)
        .subscribe(data => {
            this.news = data;
            console.log(this.selectedCountry)
        })
}

HTML

    <ion-list *ngIf="!isResult">
    <ion-item *ngFor="let country of countries" (click)="selectCountry(country)">
        {{ country }}
    </ion-item>
</ion-list>
<ion-card *ngFor="let article of news?.articles" (click)="goToNews(article)">
    <ion-card-content>
        <ion-card-title>{{ article.title }}</ion-card-title>
    </ion-card-content>
</ion-card>

新闻详情

TS


export class NewsDetailPage implements OnInit {

article

constructor(private newsService: NewsService) { }

ngOnInit() {
    this.article = this.newsService.currentArticle;
    console.log(this.article)
}
}

tabs.router.module.ts


 ....
{ path: 'news', loadChildren:'../news/news.module#NewsPageModule' },
{ path: 'news-detail', loadChildren:'../news-detail/news-detail.module#NewsDetailPageModule' },
....

1 个答案:

答案 0 :(得分:0)

最后我解决了:

ionViewWillEnter() {
    this.article = this.newsService.currentArticle;
    console.log(this.newsService.currentArticle)
}

每次我点击新的“新闻”时,它总是会改变