【发布时间】:2020-02-17 15:30:17
【问题描述】:
我有一个非常简单的 react 组件,名为:github.tsx
在里面,我有这个代码:
import React from 'react'
import axios from 'axios'
class Github extends React.Component<{any, any}>{
state = {
user: []
}
getRepoUser = async () => {
let res = await axios.get('https://api.github.com/users/example');
this.setState({
user: res.data
})
}
componentDidMount () {
this.getRepoUser()
}
render () {
const { user } = this.state
return (
<div>
<h2>{user.login}</h2>
<p> repos: {user.public_repos} </p>
<p>followers: {user.followers}</p>
<img src={user.avatar_url} alt=""/>
</div>
)
}
}
export default Github
我认为通过将<{any, any}> 添加到组件中,我不会有任何问题,但我看到这样的控制台错误:
backend.js:6 /home/example/tuts/components/github.tsx
./components/github.tsx
[tsl] ERROR in /home/example/tuts/components/github.tsx(35,24)
TS2339: Property 'avatar_url' does not exist on type 'any[]'.
对于user.login、user.public_repos、user.followers、user.avatar_url,我收到上述错误 4 次
【问题讨论】:
标签: reactjs typescript jsx typescript-generics