1. ホーム
  2. reactjs

関数でなければならない。通常はReact.PropTypesの関数である

2023-09-16 04:50:19

質問

MainからHeaderに文字列を渡したい。成功するのですが、警告が出ます。私はReactの初心者なので、何がどうなっているのかがわかりません。 it must be a function の意味がわかりません。

この警告を解決する方法を知っている人はいますか?

警告の内容は

そして、私のコードは以下の通りです。

メイン.js

import React from 'react';

import Header from './Header';
import AppList from './AppList/AppList';
import Footer from './Footer';

const propTypes = {
  mainInfo: React.PropTypes.shape({
    title: React.PropTypes.string.isRequired,
    apps: React.PropTypes.array.isRequired,
  }),
};

class Main extends React.Component {
  static methodsAreOk() {
    return true;
  }

  render() {
    return (
      <div>
        <Header title={this.props.mainInfo.title} />
        <AppList apps={this.props.mainInfo.apps} />
        <Footer />
      </div>
    );
  }
}

Main.propTypes = propTypes;

export default Main;

ヘッダ.js

import React from 'react';

const propTypes = {
  title: React.PropTypes.string.isRequred,
};

class Header extends React.Component {
  static methodsAreOk() {
    return true;
  }

  render() {
    return (
      <div className="header">
        <h1>{this.props.title}</h1>
      </div>
    );
  }
}

Header.propTypes = propTypes;

export default Header;

どのように解決するのですか?

エラーが発生しました。 React.PropTypes.string.isRequred . スペル isRequired を正しく書けばOKです。