未找到 React.JS 道具

时间:2020-12-21 14:56:24

标签: javascript reactjs typescript

这是我的 index.ts 代码(我调用组件显示的地方)

        <GlobalContext.Provider value={this.globalContext as IGlobalContext}>
            <Container maxWidth="lg">
                <Switch>
                    <Route path="" component={HelloWorld} elements={this.getResults()}/>
                </Switch>
            </Container>
        </GlobalContext.Provider>

这是 helloWorld.ts 文件的一部分(开始)

import React from 'react';

export default class HelloWorld extends React.Component {

    public render(): JSX.Element {
        let elements = this.props.elements; // I Want to get the elements props passed throuth my router component
        ....

为什么我无法在 helloWorld.ts 文件中获取 this.props.elements ?我该怎么做?

我有错误:属性“元素”不存在于类型“只读<{}> & Readonly<{ children?: ReactNode; }>'。 TS2339

1 个答案:

答案 0 :(得分:0)

使用构造函数并在渲染方法中丢失'this'。

   constructor(props)
{
    super(props);
}

public render(): JSX.Element {
 let elements = props.elements;
            ....

只需使用 props.elements 而不是 this.props.elements