不支持render中,使用函數多條件渲染
h5不報錯,但是編譯成小程序時 會報錯
錯誤寫法:
onRenderContent = () => { const { verified, recognized } = this.state; let content = null; // 初始化時,必須賦值,否則小程序報錯undefined if (verified && recognized) { content = ( <view>驗證通過且識別通過 </view> ) } else if (!verified && recognized) { content = ( <view> 識別通過但是驗證不通過</view> ) } else { content = ( <view> 默認顯示的值</view> ) } return content; } render () { return ( <view> {this.onRenderContent()} </view> ) }
正確寫法:
render () { const { verified, recognized } = this.state; let content = null; if (verified && recognized) { content = ( <view>驗證通過且識別通過 </view> ) } else if (!verified && recognized) { content = ( <view> 識別通過但是驗證不通過</view> ) } else { content = ( <view> 默認顯示的值</view> ) } return ( <view> {content} </view> ) }
.