JSX基本知识点

JSX即javascript XML


JSX是基于ECMAScript平台的一种新特性

一种定义带属性树结构的语法


JSX不是XML或者HTML

不是一种限制


特点:

类XML语法容易接受

增强JS语义

结构清晰

抽象程度高

代码模块化


语法:

var HelloMessage=React.createClass({

render:function(){

return <div className='test'>Hello {this.props.name}</div>

}

});

React.render(<HelloMessage name="john"/>,mountNode);


自定义组件首字母大写

组件与组件之间可以嵌套

求值表达式 “{  }”

驼峰命名

注释:可以在子节点或者属性位置添加注释

htmlFor和className

   var HelloWorld=React.createClass({
            render:function(){
                return <p /*

这是属性位置的注释

*/>hello,world{/*

这是子节点位置的注释

*/}</p>
            }
        })
        React.render(<HelloWorld></HelloWorld>,document.body);


添加css样式:

 var style={

color:red,

border:1px

}

   var HelloWorld=React.createClass({
            render:function(){
                return <p>hello,world</p>
            }
        })
        React.render(<div style={style}><HelloWorld></HelloWorld></div>,document.body);


条件判断的四种写法:

{三元表达式}

使用中间变量

使用函数

使用比较运算符(或运算符)

使用闭包匿名表达式


JSX非DOM属性

dangerouslySetInnerHTML 在JSX中直接插入HTML


 var obj={
            __html:"<h1> hello react</h1>"
        };
 React.render(<div dangerouslySetInnerHTML={obj}></div>,document.body);


ref  父组件引用子组件


  var obj={
            __html:"<h1> hello react</h1>"
        }
        var HelloWorld=React.createClass({
            render:function(){
                return <p ref="child">hello,world</p>
            }
        })
        React.render(<div dangerouslySetInnerHTML={obj}></div>,document.body);

key  提高渲染性能

内容相似的尽量合并为同一个组件,在列表中尽量使用唯一的key,这样可以大幅提升性能


   var obj={
            __html:"<h1> hello react</h1>"
        }
        var HelloWorld=React.createClass({
            render:function(){
                return <ul>
                    <li key="1">1</li>
                    <li key="2">2</li>
                    <li key="3">3</li>
                </ul>
            }
        })
        React.render(<div dangerouslySetInnerHTML={obj}></div>,document.body);



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值