zoukankan      html  css  js  c++  java
  • JSX语法

    1.JSX语法的本质:并不是直接把jsx渲染到页面上,而是内部先转换成了createElement形式再进行渲染的

    2.在jsx中混合写入js表达式:在jsx语法中,要把js代码写到{ }中

    渲染数字
    let a = 10;
    ReactDOM.render(<div>{a}</div>,document.getElementById('app'));
    渲染字符串
    let str = '你好,中国';
    ReactDOM.render(<div>{str}</div>,document.getElementById('app'));
    渲染布尔值
    let boo = true;
    ReactDOM.render(<div>{boo ? '条件为真' : '条件为假'}</div>,document.getElementById('app'));
    为属性绑定值
    let title = '999';
    ReactDOM.render(<div><p title={title}>这是一个p标签</p></div>,document.getElementById('app'));
    渲染jsx元素
    const h1 = <h1>哈哈哈哈哈哈哈</h1>;
    ReactDOM.render(<div>{h1}</div>,document.getElementById('app'));
    渲染jsx元素数组
    const arr = [<h2>这是h2</h2>,<h3>这是h3</h3>];
    ReactDOM.render(<div>{arr}</div>,document.getElementById('app'));

    将普通字符串数组,转为jsx数组并

    渲染到页面上(两种方案)

    const arrStr = ['毛利兰','柯南','小五郎','灰原哀'];
    
    //定义一个空数组,将来用来存放名称标签
    const nameArr = [];
    //注意:react中需要把key添加给被forEach或map循环直接控制的元素
    arrStr.forEach(item => {
        const temp = <h5 key={item}>{item}</h5>;
        nameArr.push(temp);
    });
    
    ReactDOM.render(<div>{nameArr}</div>,document.getElementById('app'));
     
    const arrStr = ['毛利兰','柯南','小五郎','灰原哀'];
    
    //直接在jsx里面循环,数组map方法也是遍历数组的每一项,并生成一个新的数组返回,注意:map中必须要写return
    ReactDOM.render(<div>{arrStr.map(item => {
            return <h3 key={item}>{item}</h3>
        })}</div>,document.getElementById('app'));

    3.在jsx中写注释:有两种方法

    //第一种注释(推荐使用):{/* */}
    {/*{arr}*/}
    
    //第二种注释:
    {
         //这里是注释的内容  
    }

    4.为jsx中的元素添加class类名:需要使用className来代替class;htmlFor替换label的for属性

    <p className="myele">!!!!!</p>
    <label htmlFor="ooo">1111</label>
  • 相关阅读:
    简单通讯聊天 群聊功能 Windows下的客户端 Linux下的epoll服务器
    Windows客户端 Linux服务器通讯 字符编码问题
    C++时间标准库时间time和系统时间的使用
    Window7系统安装Ubuntu16双系统
    Window7 系统下重新建立一个新分区
    UltraISO(软碟通) 制作U盘启动盘
    Python 列表反转显示方法
    HTML,CSS,JS个别知识点总结
    Git 创建版本库并实现本地上传数据到GitHub库
    Python爬虫数据保存到MongoDB中
  • 原文地址:https://www.cnblogs.com/zcy9838/p/12011142.html
Copyright © 2011-2022 走看看