私のコンポーネントのレンダー関数には、次のようなものがあります。
render() {
    const items = ['EN', 'IT', 'FR', 'GR', 'RU'].map((item) => {
      return (<li onClick={this.onItemClick.bind(this, item)} key={item}>{item}</li>);
    });
    return (
      <div>
        ...
                <ul>
                  {items}
                </ul>
         ...
      </div>
    );
  }
すべて正常にレンダリングされますが、<li>要素をクリックすると、次のエラーが表示されます。
キャッチされないエラー:不変の違反:オブジェクトはReactの子として有効ではありません(見つかった:キー{dispatchConfig、dispatchMarker、nativeEvent、target、currentTarget、type、eventPhase、bubbles、cancellable、timeStamp、defaultPrevented、isTrusted、view、detail、screenXを持つオブジェクト、screenY、clientX、clientY、ctrlKey、shiftKey、altKey、metaKey、getModifierState、button、buttons、relatedTarget、pageX、pageY、isDefaultPrevented、isPropagationStopped、_dispatchListeners、_dispatchIDs})。子のコレクションをレンダリングする場合は、代わりに配列を使用するか、ReactアドオンのcreateFragment(object)を使用してオブジェクトをラップしてください。のレンダリング方法を確認してください
Welcome。
map関数の内部に変更するthis.onItemClick.bind(this, item)と(e) => onItemClick(e, item)、すべてが期待どおりに機能します。
誰かが私が間違っていることを説明し、なぜこのエラーが発生するのかを説明できれば、すばらしいでしょう
更新1:
onItemClick関数は次のとおりであり、this.setStateを削除するとエラーが消えます。
onItemClick(e, item) {
    this.setState({
      lang: item,
    });
}
しかし、このコンポーネントの状態を更新する必要があるため、この行を削除することはできません
this.onItemClickに実装されますか?