this.props.children 踩坑


問題:

import React from 'react';
import ReactDOM from 'react-dom';
// import {BrowerRouter as Router,Switch,Route,Link} from '';

// import Home from 'page/home/index.jsx';
class A extends React.Component {
	constructor (props){
		super	(props)

	}
	render(){
		return <div>component A</div>

	}
}
class B extends React.Component {
	constructor (props){
		super	(props)
	}
	render(){
		return <div>component B</div>

	}
}
//容器
class Wrapper extends React.Component {
	constructor(props){
		super	(props)
	}

	render() {
		return (
			<div>
				{this.props.children}
		 </div>
		)

	}
}

ReactDOM.render(
	<Wrapper>
		<A/>
		<B/>
	<Wrapper/>,
	document.getElementById('app')
)

報錯:

排除了一下錯,原來是因為:

wrapper的閉合標簽寫錯了。

正確的寫法應該是:

import React from 'react';
import ReactDOM from 'react-dom';
// import {BrowerRouter as Router,Switch,Route,Link} from '';

// import Home from 'page/home/index.jsx';
class A extends React.Component {
    constructor (props){
        super    (props)

    }
    render(){
        return <div>component A</div>

    }
}
class B extends React.Component {
    constructor (props){
        super    (props)
    }
    render(){
        return <div>component B</div>

    }
}
//容器
class Wrapper extends React.Component {
    constructor(props){
        super    (props)
    }

    render() {
        return (
            <div>
                {this.props.children}
         </div>
        )

    }
}

ReactDOM.render(
    <Wrapper>
        <A/>
        <B/>
    </Wrapper>,
    document.getElementById('app')
)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM