Closed thisTom closed 4 years ago
线上的问题, 可以帮忙看一下么
你弄一个仓库,把你的例子精简一下放上来啊
nanachi init aaa
cd aaa && npm i
nanachi watch:bu
将source/pages/syntax/extends/index改成
import React from '@react';
import './index.scss';
import Dog from '@syntaxComponents/Dog/index';
class P extends React.Component {
state = {
name: 'ruby'
}
render() {
return (
<div class="anu-block">
<div >类继承的演示</div>
<Dog name={this.state.name} age={12} />
</div>
);
}
componentWillMount(){
setTimeout(()=>{
this.setState({name: 1000})
}, 3000)
}
}
export default P;
将source/components/Animal/index
componentWillReceiveProps(props){
this.setState({
name: props.name+"1"
});
}
没有发现问题
https://smartprogram.baidu.com/forum/topic/show/70128 更新这个改动后,子组件中 应该触发渲染的时候却没有渲染,即使render方法打印出了数据的变化,视图还是没有想要的变化,子使用了componentWillReceiveProps生命周期。
nanachi init aaa cd aaa && npm i nanachi watch:bu
将source/pages/syntax/extends/index改成
import React from '@react'; import './index.scss'; import Dog from '@syntaxComponents/Dog/index'; class P extends React.Component { state = { name: 'ruby' } render() { return ( <div class="anu-block"> <div >类继承的演示</div> <Dog name={this.state.name} age={12} /> </div> ); } componentWillMount(){ setTimeout(()=>{ this.setState({name: 1000}) }, 3000) } } export default P;
将source/components/Animal/index
componentWillReceiveProps(props){ this.setState({ name: props.name+"1" }); }
没有发现问题
小程序版本需要切换到3.105.17或以上。使用你的测试demo 确实有问题
https://smartprogram.baidu.com/forum/topic/show/70128 更新这个改动后,子组件中 应该触发渲染的时候却没有渲染,即使render方法打印出了数据的变化,视图还是没有想要的变化,子使用了componentWillReceiveProps生命周期。