React(四)—— props与render

props是组件固有属性的集合,其数据由外部传入,一般在整个组件的生命周期中都是只读的

上方HTML 在 HTML语言中,type称之为属性,而在React中属性称之为prop


这个格式要很清晰了哈

class HelloComponent extends React.Component{
    render(){
        return (
            

Hello,{this.props.attr,this.props.name}

) } } ReactDOM.render(,document.getElementById('div'))

组件的属性集合即是React的props,可以打印一下看看props

    class HelloComponent extends React.Component{
        constructor(props){
            super(props)
            this.handleClick = this.handleClick.bind(this)
        }
        handleClick(){
            console.log(this.props)
        }
        render(){
            return (
                

Hello,{this.props.attr,this.props.name}

) } } ReactDOM.render(,document.getElementById('div'))

注意一下,render的return要有一个根节点并只有一个,刚才又犯错了

打印出一个对象,就是组件的属性集合{name: "React", attr: "666"},可以调用对象的属性来取值了

props与state的区别

props不能被其所在的组件修改,从父组件传递进来的属性不会在组件内部更改;state只能在所在组件内部更改,或在外部调用setState函数对状态进行间接修改。

render函数

首先说render是一个函数,它对于组件来说,render函数是必需的。render函数的主要流程是检测this.props和this.state,再返回一个单一组件实例。

render函数应该是纯粹的,也就是说,在render函数内不应该修改组件state,不读写DOM信息,也不与浏览器交互。如果需要交互,应该在生命周期中进行交互。

内容有点少 O(∩_∩)O~

你可能感兴趣的:(React(四)—— props与render)