私はあなたがしようとしていることを信じています:
<p>Vat 1 : {details.v1} Litres - % Full</p>
<div className='progress'>
<div
className='progress-bar'
role='progressbar'
aria-valuenow='70'
aria-valuemin='0'
aria-valuemax='100'
style={{width: details.v1 + '%'}}>
<span className='sr-only'>{parseFloat(details.v1*10)} % Complete</span>
</div>
</div>
中括弧の中に入ったら、javascriptコンテキスト内にいるので、オブジェクトリテラルを定義していない限り、中括弧を追加することはできません。
実際には、スタイルオブジェクトは、オブジェクトリテラルであるです。上記と同等です:あなたはES6(ES2015別名「新しい」ジャバスクリプト)を使用することができるしている場合は、template literalsを使用して、もう少しきれいにそれを書くことができ、また
// somewhere up above
var style = {
width: details.v1 + '%'
};
// later
<p>Vat 1 : {details.v1} Litres - % Full</p>
<div className='progress'>
<div
className='progress-bar'
role='progressbar'
aria-valuenow='70'
aria-valuemin='0'
aria-valuemax='100'
style={style}>
<span className='sr-only'>{parseFloat(details.v1*10)} % Complete</span>
</div>
</div>
:
style={{width: `${details.v1}%`}}>
あなたはおそらく、この値を制御するために他のどこかからこのコンポーネントにprop
を渡す必要があります。そのため、変更するとコンポーネントも同様になります。
また、このコードを<ProgressBar />
コンポーネントにラップすると、おそらくprogress
の小道具が<ProgressBar progress={75}/>
のようになります。
ありがとうDanny、それはコンポーネントにラップするのが理にかなっています。 – LWNZ