Taro

小程序跨平台开发解决方案探索

萝らか妹 提交于 2019-11-27 12:10:38
原文链接: https://ant-move.github.io/website/blog/2019/07/30/miniprogram-development.html 继微信正式推出微信小程序后,各个大厂陆续发布了各自的小程序平台 —— 支付宝小程序、百度小程序、头条小程序,跨小程序平台开发也成为了众多小程序开发者要面临的问题。 Antmove - 小程序跨平台解决方案 小程序开发血泪史 小程序发展初期 框架不稳定 更新频繁 bug 众多 随着微信小程序的发展,微信小程序以基本不存在上述的问题,而其它新兴的小程序厂商则还在此阶段,对于小程序开发者来说,如果要接入微信小程序之外的平台,以上的问题是技术方案评估环境必须要衡量的问题。 小程序发展中期 开发体验提升 组件式开发需求 与 web 开发技术生态的融合 在这个阶段,小程序开发者追求的是开发体验,在 web 框架蓬勃发展,开发工具生态飞速完善的环境下,槽糕的小程序开发体验是用户不能忍受的,这个阶段也出现了许多的小程序框架极力的解决这个问题,如 wepy、mpvue、taro 等。 小程序发展成熟期 多平台支持需求 包体积 性能 到今年以来,除微信小程序平台外,其它厂商小程序平台也得到了极大的推动发展,这时小程序跨平台能力就显得尤为重要,同时与之相对的包体积控制小程序性能也成为关注点,这也是目前众多企业和开发者面临的问题。

Taro开发填坑记

眉间皱痕 提交于 2019-11-26 10:23:23
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这个文件里面有错,编译不成功