gpt4 book ai didi

angular - 类型 'subscribe' 上不存在属性 '() => Observable'

转载 作者:太空狗 更新时间:2023-10-29 16:59:08 24 4
gpt4 key购买 nike

服务文件

import { Observable } from 'rxjs/Rx';
import { Http,Response} from '@angular/http';
import { Injectable } from '@angular/core';
import 'rxjs/add/operator/Map';

@Injectable()
export class VideoService {

private geturl = '/api/videos';
constructor(private _http:Http) { }

getvideos() {
return this._http.get(this.geturl).map((response:Response) => {
response.json()
});
}
}

这里是订阅方法显示这个错误的地方

import { VideoService } from '../video.service';
import { Component, OnInit } from '@angular/core';
import { Video } from '../video';
import { Observable } from 'rxjs/Observable';


@Component({
selector: 'app-videocenter',
templateUrl: './videocenter.component.html',
styleUrls: ['./videocenter.component.css']
})
export class VideocenterComponent implements OnInit {
videos: any;
onselectvideo: Video;
switch: boolean = false

constructor(private videoserv: VideoService) {
//console.log(this.videos);
}
onselect(vid: any) {
this.switch = true;
this.onselectvideo = vid;
console.log(vid);
}
ngOnInit() {
this.videos = this.videoserv.getvideos .subscribe((response) => {
this.videos = response;
});
}

}

我有一个服务文件,我必须在其中调用我的 api 来获取 api,当我要在另一个类中订阅该方法时,我正在调用该服务方法 getvideos() 然后它显示该属性的错误“订阅”在类型 ()=> observable

上不存在

最佳答案

您没有调用 getVideos 方法。您正在对 getVideos 的函数引用而不是返回值调用 subscribe。在调用 getVideos() 之后调用 subscribe:

ngOnInit() {
this.videoserv.getvideos().subscribe((response) => {
this.videos = response
});
}

关于angular - 类型 'subscribe' 上不存在属性 '() => Observable<any>',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44092034/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com