たとえば、Reactでスタイルを設定するには、次のようにします。
var css = {color: red}
そして
<h1 style={css}>Hello world</h1>
2番目のコードスニペットでcssを中括弧で囲む必要があるのはなぜですか?
中括弧は、JSXパーサーに、中のコンテンツをストリングではなくJavaScriptとして解釈する必要があることを知らせる特別な構文です。
JSX内の変数や参照などのJavaScript式を使用する場合に必要になります。なぜなら、次のような標準の二重引用符構文を使用すると:
var css = { color: red }
<h1 style="css">Hello world</h1>
JSXは、スタイル属性で文字列の代わりに変数css
を使用するつもりだったことを知りません。また、変数css
を中括弧で囲むことにより、パーサーに「変数css
の内容を取得して、ここに配置する」ように指示しています。 (技術的にはコンテンツの評価)
このプロセスは、一般に「補間」と呼ばれます。
変数css
を使用しない場合、JSXは次のようになります。
<h1 style={ {color: 'red'} }>Hello world</h1>
二重中括弧について混乱していると思います。
jSXの中括弧はprocessing in a JavaScript way
ので、外側の中括弧はまさにこの目的に使用されます。
ただし、style
プロパティはobject
を受け入れます。また、オブジェクトをラップするには、もう1組の中括弧が必要です。それが内側のものの目的です。
変数の値を "html"内(レンダーパーツ内)で使用する場合は、中かっこを付けます。これは、Wordではなく、変数の値を取得してそこに配置するようにアプリに指示する方法にすぎません。