我该如何解决类型'subscription'缺少类型'Tab2Page'中的以下属性:http,navCtrl

问题描述

我是离子和角材料的新手。我一直在看一个教程,该教程正在创建一个应用程序,该应用程序应该从Reddit上获取帖子...但是我一直遇到一系列错误,但我真的不理解它们。这是我的Tab2Page.ts代码

import {Component} from '@angular/core';
import {NavController} from '@ionic/angular';
import {HttpClient} from '@angular/common/http';

@Component({
 selector: 'app-tab2',templateUrl: 'tab2.page.html',styleUrls: ['tab2.page.scss']
})
export class Tab2Page {
http: any;

constructor(public navCtrl: NavController,public http: HttpClient) {
 return this.http.get('http://www.reddit.com/r/gifs/new/.json?limit=10')
   .subscribe ((response: any) => {
     this.http = response.data.children;
}
}

那么你们看到问题出在哪里吗?如果能尽快获得帮助,我将非常感谢。我正在将该应用程序用作项目,我必须在下周三的星期三提交。谢谢☺

解决方法

第一件事:

export class Tab2Page {
http: any;

constructor(public navCtrl: NavController,public http: HttpClient) {

您有两个不同的名为http的属性声明,一个是HttpClient的实例,一个应该存储API调用的结果。您需要重命名其中之一。

然后,如果您遇到错误,请共享完整的错误消息。他们确实有帮助。通常。