Weex与ReactNative开发方式对比

一、Weex与ReactNative开发方式对比

 weex react native
JS框架vue.js,可以开发小程序、PWAreact.js,目前不能开发小程序
管理实例是否单例化没有要求官方建议ReactInstanceManager进行单例化
即同一个bundle name 打开多次都使用同一个ReactInstanceManager
开发时启动web服务使用server.js或者express等nodejs中的web服务react native 自己封装:
npm run start "start""node node_modules/react-native/local-cli/cli.js start"
打包Bundle
使用webpack:
webpack --config build/webpack.native.config.js
react native 自己封装:
react-native bundle --platform android 
--dev false --entry-file index.js 
--bundle-output android/xxx/src/main/assets/index.android.bundle
--assets-dest android/xxx/src/main/res/
按页面拆分Bundle使用webpack 扫描不同的入口文件,打出不同的包,
一个Bundle就是一个page
自己写代码实现切换不同的入口文件打包,
一个Bundle可以包含多个page,但我们可以只包含一个page,
来做页面级别的Bundle拆分
路由,实现MPA拦截vuerouter的push方法即可需要自己写native module 来处理页面跳转
热更新
支持网络bundle、assets bundle、file bundle三种格式,
使用mWXSDKInstance.renderByUrl()
RNHost 支持assets bundle、file bundle,
网络bundle需要自己实现先下载成file bundle,
从而实现热更新
debug环境下可以使用网络bundle开发
支持Android版本>=14>=16
后门模式没有,可以自己实现一个
mReactInstanceManager.showDevOptionsDialog();
调试Chrome Developer Tools
1、app native DevOptionsDialog
2、Chrome Developer Tools
Android 返回键自己用事件实现
invokeDefaultOnBackPressed()


二、Weex、ReactNative Android平台容器的封装,实现MPA,Bundle缓存、验签等通用功能。

1、WeexContainer-Android  :https://github.com/MasonLiuChn/WeexContainer-Android

2、RNContainer-Android:https://github.com/MasonLiuChn/RNContainer-Android

推荐使用Weex
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值