共计 771 个字符,预计需要花费 2 分钟才能阅读完成。
Taro 是由京东 – 凹凸实验室打造的一套遵循 React 语法规范的多端统一开发框架。
我试用了有 15 天左右,总的来说,这是一款优秀的框架,尤其补充了目前市面上无法用 React 开发小程序的需求空缺,所以其优点就不多说了,大家可去其官方查看详细文档
下面说下我的试用感受,希望帮助后面使用 Taro 的同学少踩一些坑;因为能力有限,可能了解和认识会有一些不到位的地方,还望各路大佬不吝留言赐教
存在的问题
以下,是我在使用 Taro 过程中遇到的影响开发流程或体验的地方:
不支持 source map,调试可通过 debugger
不支持 alias,所以项目里会有大片大片的 ../../../,不利于后期维护
全局请求的需求,官方未有最佳方案。理应 app.tsx 是最合适的地方,但是该组件的 Provider 组件内写的任何组件都会被 Taro 替换掉。我目前是通过在 app.tsx 里通过 store.dispatch(action) 发送全局异步请求
redux/connect 方法的 mapStateToProps 缺少第二个参数 ownProps
组件嵌套时,taro 生命周期与 react 生命周期执行顺序有差异,如图是 Taro 的生命周期执行顺序,可以看到 componentDidMount 跟 React 是相反的。
不可以使用 … 拓展操作符给组件传递属性,<Comp {…props} /> 写法错误
属性不能传入 JSX 元素,<Content footer={<View />} /> 写法错误
展望
虽然存在以上种种问题,还是要感谢京东前端团队能够开源一款 React 语法的多端开发框架,让我们 React 粉儿能够用 React 开发小程序;以上有些问题我已提了 PR,如 Q4,并且维护人员很快将 PR 进行了 merge,凹凸团队对这个项目的重视程度和责任心可见一斑,所以我相信,凹凸团队一定可以把 Taro 不断完善的,加油!