當你在開發時若不想使用編譯器的話,不使用JSX也是可以開發react的。
每個JSX元素都只是呼叫 React.createElement(component, props, ...children)的語法糖。單純使用Java Script也可以完成react的開發。
例如下方為JSX開發的程式:
class Welcome extends React.Component {
render() {
return <div>Hello {this.props.someone}</div>;
}
}
ReactDOM.render(
<Welcome toWhat="小羽" />,
document.getElementById('App')
);
若不使用JSX開發的話,可以改成下列方式:
class Welcome extends React.Component {
render() {
return React.createElement('div', {}, `Hello ${this.props.someone}`);
}
}
ReactDOM.render(
React.createElement(Welcome, {someone: 'World'}, {}),
document.getElementById('root')
);
也可以用變數取代React.createElement
來簡化你的程式。
const element= React.createElement;
ReactDOM.render(
element(Welcome, {someone: 'World'}, {}),
document.getElementById('root')
);
當開發專案時若不使用JSX等語法糖時,單純使用Java Script開發也是很方便的