私はstyled-componentsをReactのスタイリングの解決策として使用しています。テンプレートリテラルを使ってCSSを補間する素晴らしい方法があります。あなたのようなことを行うことができるようにテンプレートリテラルは、コンポーネントの小道具を渡されます。 テンプレートリテラル内に関数を定義する
const PasswordsMatchMessage = styled.div`
background: ${props => props.isMatching ? 'green' : 'red'};
`
結果はisMatching
の値に応じて、緑または赤の背景のいずれかでdiv
タグをレンダリングするコンポーネントです。上記のようにJSXを経由して使用することになります。
<PasswordsMatchMessage isMatching={doPasswordsMatch}>...</PasswordsMatchMessage>
たびprops
の値が変化し、この文字列は、再補間されようとしています。最後に私の質問に私をもたらします:
テンプレートリテラルが定義されるたびに、テンプレートリテラル内で定義された矢印関数が再定義されますか?
もしそうなら、私はテンプレートリテラルの外で関数を作成し、それらを渡すことを検討するかもしれません。
なぜ動作しないのか分かりません。あなたはそれをテストしましたか? –
@KeithAそれは動作します、それは私の質問ではありません。ちょっと埋まってしまったので、質問を明確にするために私の投稿を編集しました;) – maxedison
Hmmm。よく分かりません。あなたの質問には理由がありますか? –