Eslint - 道具验证中缺少 'match' (react/prop-types)

Eslint - 'match' is missing in props validation (react/prop-types)

我的 eslint 在以下行失败。

  const id = this.props.match.params.personID;

我该如何解决这个问题。设置一个忽略的规则就可以了。找到修复会更好。

错误

 severity: 'Error'
    message: ''match' is missing in props validation (react/prop-types)'
    at: '14,27'
    source: 'eslint'
    code: 'react/prop-types'

当您检查道具类型时,您还必须验证匹配的形状。

如果您使用的是流量:

type Props = {
  match: {
    params: {
      field1: number,
      field2: string,
    }
  }
  ...
}

class Component extends React.Component<Props> {
  ...
}

如果您不是并且正在使用 PropTypes...

import PropTypes from 'prop-types';

class MyComponent extends React.Component {
  ...
}

MyComponent.propTypes = {
  match: PropTypes.shape({
    params: PropTypes.shape({
      field1: PropTypes.number.isRequired
      field2: PropTypes.string
    })
  }),
  ...
}