angular - “对象”类型可分配给极少数其他类型。您是不是要改用“任何”类型
问题描述
当我尝试初始化“this.post”以分配给变量时,它不允许我这样做。我正在使用 Angular 8
import { Component, OnInit } from '@angular/core';
import { HttpClientModule, HttpClient, HttpBackend } from '@angular/common/http';
import { Observable, observable } from 'rxjs';
@Component({
selector: 'app-post',
templateUrl: './post.component.html',
styleUrls: ['./post.component.css']
})
export class PostComponent implements OnInit {
post: any[];
constructor(private http: HttpClient) {
http.get('https://jsonplaceholder.typicode.com/posts').subscribe(responce => {
this.post = responce
})
}
ngOnInit() {
}
}
解决方案
这里 TypeScript 抱怨类型不匹配,订阅函数参数有类型对象,你正在将它分配给其他类型
httpClient.get函数是通用的,意味着你可以告诉它什么是响应类型,如果你不提供它,它将默认设置为对象。
好像您正在将您的回复分配给任何类型的帖子
所以这会起作用
constructor(private http: HttpClient) {
http.get<any[]>('https://jsonplaceholder.typicode.com/posts').subscribe(responce => {
this.post = responce
})
}
推荐阅读
- python - 拆分具有多个分隔符的字符串,并保留 *一些* 分隔符,但不是全部
- discord.py - 向 discord bot 命令添加可选的关键字参数
- common-lisp - GISC 练习 8.24 和 8.26:cond 结果形式的 if 条件未按预期工作
- apache - URL 重定向,htaccess。如果找不到字符串,则在字符串后捕获并插入
- html - 更正仅包含背景图像的链接的 a11y 声明
- wordpress - 如何检查 WordPress 网站或其主机是否被黑客入侵?网站正在自动复制到其他网站
- matlab - 在matlab中查看其他局部函数的变量
- javascript - 更改光标后圆圈下的文本颜色
- spring-boot - 可以在 Kotlin 中暂停 main 功能吗?
- android - 在单个 Firebase Realtime API 调用中推送多个子节点?