web-dev-qa-db-ja.com

withRefは削除されました。ラップされたインスタンスにアクセスするには、接続されたコンポーネントの参照を使用します

Refを使用して接続コンポーネントから関数を呼び出したいので、以前は接続コンポーネントのwithRef: trueから使用しました。

export default connect(
  mapStateToProps,
  mapDispatchToProps, null, {withRef: true})(InviteReceiverForm)

そして、プレゼンテーションコンポーネントで:

<ExampleComponent ref={
   cmp => { if (cmp) { this.invdividualSenderFormRef = cmp.getWrappedInstance() } } />

react-redux 6に更新した後、次のエラーが表示されました。

 withRef is removed. To access the wrapped instance, use a ref on the connected component

Refact-redux 6でrefを使用するにはどうすればよいですか?

20
2 8

https://github.com/reduxjs/react-redux/releases/tag/v6.0.

接続のwithRefオプションはforwardRefに置き換えられました。 {forwardRef : true}connectに渡された場合、接続されたラッパーコンポーネントにrefを追加すると、実際にはラップされたコンポーネントのインスタンスが返されます。

33
Ian Kemp

それは私のために働いています:

connect( mapStateToProps, null, null, { forwardRef: true } ) )(ComponentName);

2
Tu Duong