jsx语法规则

JSX语法规则:

  1. 定义虚拟DOM时,不要写引号
  2. 标签中混入JS表达式时用{}
  3. 样式的类名指定不要用class,要用className
  4. 内联样式,要用style={ {key:value}}的形式去写
  5. 只有一个根标签
  6. 标签必须闭合
  7. 标签首字母:
    1.     -- 若小写字母开头,则表示该标签转为HTML标签中同名元素,若HTML中无该标签对应的同名元素,则报错。                    
    2.     -- 若大写字母开头,react就去渲染对应的组件,若组件没有定义,则报错。

具体在React中应用

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>jsx语法规则</title>
	<style>
		.title{
			background-color: orange;
			width: 200px;
		}
	</style>
</head>
<body>
	<!-- 准备好一个“容器” -->
	<div id="test"></div>

	<!-- 引入react核心库 -->
	<script type="text/javascript" src="../js/react.development.js"></script>
	<!-- 引入react-dom,用于支持react操作DOM -->
	<script type="text/javascript" src="../js/react-dom.development.js"></script>
	<!-- 引入babel,用于将jsx转为js -->
	<script type="text/javascript" src="../js/babel.min.js"></script>

	<script type="text/babel">
        const myId = "aTguiGU"
        const myData = "hellO,ReacT"
        // 1.创建虚拟DOM
        const VDOM = (
            <div>
                <h2 className='title' id={myId.toLowerCase()}>
                 {myData} 
                </h2>
                <h2 className="title" id={myId.toUpperCase()}>
                    <span style={
   
   {color:'white',fontSize:'20px'}}>{myData.toUpperCase()}</span>
                </h2>
                <input type="text"/>
            </div>
        )
        // 2.渲染虚拟DOM到页面
        ReactDOM.render(VDOM,document.getElementById('test'))

        /* 
            JSX语法规则:
                1.定义虚拟DOM时,不要写引号
                2.标签中混入JS表达式时用{}
                3.样式的类名指定不要用class,要用className
                4.内联样式,要用style={
   
   {key:value}}的形式去写
                5.只有一个根标签
                6.标签必须闭合
                7.标签首字母:
                        -- 若小写字母开头,则表示该标签转为HTML标签中同名元素,若HTML中无该标签对应的同名元素,则报错。
                        -- 若大写字母开头,react就去渲染对应的组件,若组件没有定义,则报错。
        */
    </script>
</body>
</html>

猜你喜欢

转载自blog.csdn.net/qq_38499019/article/details/116245007