【发布时间】:2020-04-23 00:07:33
【问题描述】:
我是使用 Typescript 进行 React 的新手,我收到一条错误提示:
没有重载匹配这个调用。重载 1 of 2, '(props: Readonly): IndexPage',出现以下错误。
键入'{注释:{1:{_id:数字;标题:字符串;正文:字符串; 更新时间:日期; }; }; }' 不可分配给类型 'IntrinsicAttributes & IntrinsicClassAttributes & Readonly & Readonly'。 类型“IntrinsicAttributes & IntrinsicClassAttributes & Readonly & Readonly'。重载 2 of 2, '(props: {}, context?: 任何):IndexPage',给出了以下错误。 键入'{注释:{1:{_id:数字;标题:字符串;正文:字符串;更新时间:日期; }; }; }' 不可分配给类型 'IntrinsicAttributes & IntrinsicClassAttributes & Readonly & Readonly'。 类型“IntrinsicAttributes & IntrinsicClassAttributes & Readonly & Readonly'。
**App.tsx**
//import statements
type Note={
notes: {
1: {
_id: number;
body:string;
title:string;
updatedAt: Date
}
} }
type State={notes: {[key:number]: Note} }
class App extends React.Component <State> {
state={
notes: {
1: {
_id:1,
title: "hello world",
body: "this is the body",
updatedAt:new Date()
}
}
}
render(){
return (
<div className="App">
<Nav/>
<Headers/>
<IndexPage notes = {this.state.notes}/>
</div>
);
}
}
export default App;
================================================ ======= Index.tsx:
import React from 'react';
export default class IndexPage extends React.Component{
render(){
const notes=Object.values(this.props.notes);
return(
<div>
<h1> posts</h1>
<h2> {notes[0].title}</h2>
</div>
)
}
}
【问题讨论】:
标签: reactjs typescript jsx react-state react-typescript