1 回答

TA貢獻(xiàn)1911條經(jīng)驗(yàn) 獲得超7個贊
問題出在 main.js 中 _loadText
的 textview: <Text text={this.state.text} />
上
你的這種寫法,實(shí)際上是告訴 React,當(dāng)我 load 的時(shí)候,給我一個 Text
組件,并且屬性是那時(shí)候的 this.state.text
(這個例子里也就是 'text' ),父組件更新的時(shí)候并不會對 this.state.textview
進(jìn)行更新
下面這么改就可以了
_loadText () 函數(shù)中,改變 this.setState
的內(nèi)容
this.setState({
textview: Text
})
render () 函數(shù)中
<div>
<div>Main</div>
<button onClick={() => this._loadText()}>load</button>
<button onClick={() => this.setState({ text: 'change' })}>change</button>
{this.state.textview ? React.createElement(this.state.textview, { text: this.state.text }) : null}
</div>
添加回答
舉報(bào)