为什么我的React [this.props]不包含参数捕获所必需的元素

时间:2018-04-04 03:33:22

标签: reactjs react-router

我有一个react类,我正在尝试从调用者中检索参数。参考一些在线教程以及Stackoverflow的答案,我应该使用以下内容:

  • this.props.match.params
  • queryString.parse(this.props.location.search);

但是当我尝试使用我的node.js编译它时,这两种方法也会引发我的错误,如下所示:

  

[at-loader]中的错误./js/module/sample/sample01.tsx:8:29       TS2339:属性'firstName'在类型'Readonly< {children?:ReactNode; }> &安培;只读< {}>”

     

[at-loader]中的错误./js/module/sample/sample01.tsx:9:44       TS2339:属性'location'在类型'Readonly< {children?:ReactNode; }> &安培;只读< {}>”

似乎没有其他元素在 this.props

之下

这是我的源代码:

import * as React from 'react';
import { Link } from 'react-router-dom';
import * as queryString from 'query-string';

export class Textboxes extends React.Component {

  render() {
    var firstName = this.props.match.params.firstName;
    var parsed = queryString.parse(this.props.location.search);
    var firstName = parsed.firstName;
    var lastName = parsed.lastName;
    return(
    ...

感谢。

1 个答案:

答案 0 :(得分:0)

如果您只想将参数传递给Textboxes ...

<Textboxes firstName="John" lastName="Wong/>

你应该做的就是......

export class Textboxes extends React.Component {

  render() {
    var firstName = this.props.firstName;
    var lastName = this.props.lastName;
    return(
    ...

如果那是错的,请告诉我,我会删除此帖。