原生 RN 项目与 Taro 如何共存?
我们团队一开始就有实践原生 React Native 的项目,很长一段时间,
所有的业务模块都是在一个项目里面开发维护,时间久了这个项目就变成了一个巨无霸项目.
再加上后来引进了基于 Taro 开发的 RN 项目,为了保证原生与 Taro 的 RN 共存,
不管是原生 RN 项目还是 Taro 项目的 package.json 文件的 main 对外导出的索引文件格式都是一致的.
我们使用以下方案来维护我们的代码.
使用 npm 来管理我们的业务模块
RN 业务的主工程
这是我最初实践的方案,首先我们创建一个项目为 RN 的主工程.
里面没有任何的业务代码,只有在根目录下有一个 index.js 的业务索引文件.
它大概是这样的:
import { AppRegistry} from 'react-native';
import Module1 from 'Module1';
import Module2 from 'Module2';
import Module3 from 'Module3';
AppRegistry.registerComponent('Module1', () => Module1);
AppRegistry.registerCompo