Taro是一个前端的多端开发框架,写一套代码就可以编译成H5,RN,微信小程序,支付宝百度小程序等等。
下面记录一下遇到的坑。
1.要以微信小程序的模式去开发代码,预览效果。因为H5的兼容性好,小程序的兼容性差,比如实现一个功能用H5的写法有10种,小程序的写法只有2种,那么在taro里面就只能用这两种方法去实现,以保证多端的效果统一。
2.taro编译成微信小程序代码后,在微信开发工具里面预览,效果可能有问题,但在真机上没问题,这个注意一下。
3.跳转第三方的链接H5,用taro的webview去实现以保证H5和微信小程序的效果。
4.元素点击事件的传递拦截,用js的e.stopPropagation()和e.preventDefault()方法在H5里面效果很好,但在微信小程序不行它只支持catchtap方法。taro也没有提供夸端的通用方法,目前用逻辑在代码里面自己判断了。
5.页面组件间传参,包括跳转外链,参数最好都解码一下,不然可能会乱码。encodeURIComponent(url) decodeURIComponent(url)
6.如果明明有某个文件,但编译之后却提示Module not found: Can't resolve '../service/carService' in ...,那可能是carService这个文件里面有错,编译不成功,检查应carService这个文件是否有语法错误之类的。
7.ScrollView的高度必须是一个固定的值或者比如100vh,不能是100%,不然没有效果,滚动的监听函数不会触发。
来源:oschina
链接:https://my.oschina.net/u/2606060/blog/3129175