且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

React native 栈溢出错误maximum call stack size exceeded.

更新时间:2021-10-03 12:34:08

Cannot update during an existing state transition (such as within render or another component's constructor). Render methods should be a pure function of props and state; constructor side-effects are an anti-pattern, but can be moved to componentWillMount.

React native  栈溢出错误maximum call stack size exceeded.
控制台报错提示

模拟器 红屏提示:maximum call stack size exceeded.

这个错误的主要原因是,我们在RN render 的时候导致无限循环,才报这个错误,根据原因查找 什么导致无限循环?那可能就是我们在 setState 的时候,
检查下代码,原来是没有bind

<TouchableOpacity style={styles.rowIcontItems} onPress={() => {
                this.setState({ modalVisible_Share: true })
              }}>
                <Image style={styles.rowIamge} source={require('../../assets/img/icon_1.png')} />
                <Text style={styles.ImagebottomText}>邀请好友</Text>
              </TouchableOpacity>


或则   在初始化的时候 
this.cancel = this.cancel.bind(this); 
然后用的时候 this.cancel;