原生模块处理明细
模块处理用来处理三方插件,很多三方插件需要对原生模块代码或者配置进行修改才能使用,如微信、支付宝、codepush、高德地图等,这个文档将详细介绍模块处理的功能
每个模块都可用拥有自己的三方模块处理,模块下 update/rn.js
,就是当前模块的处理文件,这个文件是node模块文件,需要用module.exports
进行导出
module.exports = {
}
当你需要用到当前的配置、或者打包的模块列表时,可以导出一个函数,从参数中获取到
module.exports = ({ config, apps, configName }) => {
return {
}
}
- config 当前app的用户配置文件 详情参见 用户配置
- apps 一个数组表示当前被打包的模块列表
- configName 当前使用的用户配置的名称
信息
使用函数导出返回的对象和直接导出的对象内容相同
下面将详细介绍此对象包含的内容
insert 插入
使用预埋点插入内容,insert预埋点详见内容添加预埋点
例如要给安卓添加一个实现gif图显示的依赖
module.exports = () => {
return {
insert: {
'android/app/build.gradle': {
dependencies: ` implementation 'com.facebook.fresco:animated-gif:2.5.0'`
}
}
}
}
在insert中每个key表示文件路径,value表示插入的预埋点的集合,上面的就表示在 dependencies
预埋点插入内容,可以同时在多个预埋点插入内容