在JSX Style不可以有多的個class屬性,像是<div class=’abc’ class={‘def}>這樣就會有錯,若要多個class使用,可以改寫成
import './App.css'
... ...
// abc和test為App.css的class
let testclass = "test"
<div>
<h1 className={"abc " + testclass}>TEST</h1>
</div>
Style (example)表達式,如果存多個屬性,必須使用駝峰式命名 或是 用引號包住,如果style只有單個屬性,則是寫成<div style={{background:'blue'}}>Test</div>,外層的大括號表示JSX語法,內層的大括號則表示物件,跟多個屬性的表達方式意思一樣
let example = {
background: "skyblue",
borderBottom: "2px solid red",
'background-image': 'url(https://fakeimg.pl/300/)',
width: '300px',
height: '300px'
}
let color = 'bgRed'
let center = 'App ' //這是來自引入App.js的class,後面有個空格,這樣串接class才有效,否則會連一起
function Clock(props) {
return (
<div>
<h1 className={center + color}>現在時間</h1>
<strong style={example}>{props.time.toLocaleTimeString()}</strong>
<div style={example}></div>
</div >
)
}
var rc = () => { ReactDOM.render(<Clock time={new Date()} />, document.getElementById('root')) }
setInterval(rc, 1000)
註解:
在JSX裡要寫註解必須在大括號裡做,像是
let example = (
<div>
{ /*這裡寫註解*/ }
</div>
)