Reactの中括弧表記とhref
タグを組み込む方法はありますか?状態に次の値があるとします。
{this.state.id}
タグの次のHTML属性
href="#demo1"
id="demo1"
私はこのようなものを得るためにHTML属性にid
状態を追加することができる方法があります:
href={"#demo + {this.state.id}"}
これは次のようになります。
#demo1
あなたはほとんど正しいです、ちょうどいくつかの引用符を置き忘れました。全体を通常の引用符で囲むと、文字列#demo + {this.state.id}
が文字通り得られます - どれが変数でどれが文字列リテラルであるかを示す必要があります。 {}
内のものはすべてインラインのJSX expression なので、次のことができます。
href={"#demo" + this.state.id}
これは文字列リテラル#demo
を使い、それをthis.state.id
の値に連結します。これはすべての文字列に適用できます。このことを考慮:
var text = "world";
この:
{"Hello " + text + " Andrew"}
これは次のようになります。
Hello world Andrew
ES6文字列内挿/ テンプレートリテラル を `(バッククォート)や${expr}
(内挿式)と共に使用することもできます。これは、実行しようとしているものに近いものです。
href={`#demo${this.state.id}`}
これは基本的にthis.state.id
の値を置き換え、それを#demo
に連結します。 "#demo" + this.state.id
を実行するのと同じです。
小道具/変数を連結するための最良の方法:
var sample = "test";
var result = `this is just a ${sample}`;
//this is just a test