今天和大家聊一聊taro在微信小程序下函数组件多次执行问题
关于taro和小程序
首先taro是一个针对多端小程序的编译框架。
对于微信小程序来说,taro的源码最终会编译成微信小程序可执行的代码。
因此对于使用taro进行开发来说,既会受到小程序的约束,又能利用小程序的优势
小程序初始数据
对于小程序来说,可以通过data
进行数据绑定,为页面模板提供初始数据。
这种方式能够更有效的提升初始渲染的效率。
但是对于react来说,组件的初始状态来自于组件的构造函数中的初始state或者函数组件的usestate。
这就意味使用react语法的taro,在将react组件转换为小程序自定义组件时,需要多运行一次构造函数及render(对于类组件)或者函数组件,以产生小程序组件的data
对应的taro中的源码如下