用Weex开发的V2EX三端app,附探坑总结


项目地址

git传送门(内附项目预览)

Weex环境配置

npm install -g weex
npm install -g weexpack 
# weex客户端的cli
npm install -g weex-toolkit
# 安装调试工具
ios依赖Cocopod环境

探坑总结

1.div无法渲染文本需使用<text>
2.不支持富文本,需native单独封装module
3.不支持z-index,层级靠后优先
4.class表达式需使用数组形式,否则会报错
5.css无法简写(例:padding: 0 0 0 0 不支持,需padding-left padding-right各写属性)
6.不支持dom操作
7.weex原生滑动事件不支持嵌套<list>和<scroller>标签
8.使用vue-router会出现跳转僵硬,如使用跳转动画需单独打包各个vue成jsbundle,用navigtor跳转,但单独打包后无法使用vuex
9.添加ios平台后需将podfile文件ATSDK-weex改为ATSDK否则会报错
10.gif图片仅Ios支持,android需单独添加支持库
11.使用v-if会有闪屏现象,推荐使用opacity显示(opacity为0时android会隐藏层级,但ios不会,需做判断)
12.weex全局变量无法在vue模板渲染使用,可在vue实例中data添加
13.不支持百分比,宽度默认750px
14.图片必须定义高度宽度,否则无法显示
15.长列表分页渲染会出现内存泄漏

与react-native的比较

1.react-native支持热替换,weex不支持
2.react-native有cookie插件,支持一些token情况的请求,weex不支持,只能在客户端添加
3.react-native生态很全,第三方组件很多,weex目前处于发展阶段
4.weex包大小要比react-native小很多

其他开源项目

react-native开发的V2EX项目
react-native开发的仿点融网P2P开源项目


发表评论

电子邮件地址不会被公开。 必填项已用*标注

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>