项目地址
git 传送门(内附项目预览)
Weex 环境配置
npm install -g weex
npm install -g weexpack
# weex 客户端的 cli
npm install -g weex-toolkit
# 安装调试工具
ios 依赖 Cocopod 环境
安装调试请参照 git
探坑总结
- div 无法渲染文本需使用 text 标签
- 不支持富文本,需 native 单独封装 module
- 不支持 z-index,层级靠后优先
- class 表达式需使用数组形式,否则会报错
- css 无法简写(例:padding: 0 0 0 0 不支持,需 padding-left padding-right 各写属性)
- 不支持 dom 操作
- weex 原生滑动事件不支持嵌套 list 和 scroller 标签
- 使用 vue-router 会出现跳转僵硬,如使用跳转动画需单独打包各个 vue 成 jsbundle,用 navigtor 跳转,但单独打包后无法使用 vuex
- 添加 ios 平台后需将 podfile 文件 ATSDK-weex 改为 ATSDK 否则会报错
- gif 图片仅 Ios 支持,android 需单独添加支持库
- 使用 v-if 会有闪屏现象,推荐使用 opacity 显示(opacity 为 0 时 android 会隐藏层级,但 ios 不会,需做判断)
- weex 全局变量无法在 vue 模板渲染使用,可在 vue 实例中 data 添加
- 不支持百分比,宽度默认 750px
- 图片必须定义高度宽度,否则无法显示
- 长列表分页渲染会出现内存泄漏
与 react-native 的比较
- react-native 支持热替换,weex 不支持
- react-native 有 cookie 插件,支持一些 token 情况的请求,weex 不支持,只能在客户端添加
- react-native 生态很全,第三方组件很多,weex 目前处于发展阶段
- weex 包大小要比 react-native 小很多