変換されたプレーンテキストを返す反応コンポーネントを作成しようとしています。ただし、react は、コンテンツをラップした 1 つ以上の html を返すことを強制します。
このような静的ユーティリティ関数を追加することを考えました
@connect((state) => {
return {
state_val: state.state_val
};
})
export default class Transform extends Component {
...
}
Transform.text = (text) => {
// Need to access state here, but this.props.state_val
// is not available till the Component is initialized
return text.toUpperCase();
}
これが良いパターンかどうかはわかりませんが、もちろん状態にアクセスしようとしない限り、これは機能します。コンポーネントが初期化された後に状態が利用可能になるためです。何らかの方法で状態にアクセスする方法はありますか、コンポーネントを手動で初期化することができます。
または、これを行うことができる方法があるかもしれません
return (
this.props.text.toUpperCase(); // It is not allowed though
);