react-native-cli 自带脚本可以打包 react-native bundle 命令
以下是命令的参数说明:
react-native bundle --entry-file index.ios.js --bundle-output ./ios/main.jsbundle --platform ios --assets-dest ./ios --dev false
如果打Android的bundle 用以下命令 跟iOS差不多,把变量换成android
react-native bundle --entry-file index.android.js --bundle-output ./android/app/src/main/assets/index.android.bundle --platform android --assets-dest ./android/app/src/main/res --dev false
利用npm的脚本也可以实现当前的效果,在package.json中添加如下:
"scripts": {
"start": "node node_modules/react-native/local-cli/cli.js start",
"bundle-ios": "react-native bundle --entry-file index.ios.js --bundle-output ./ios/main.jsbundle --platform ios --assets-dest ./ios --dev false",
"bundle-android": "react-native bundle --entry-file index.android.js --bundle-output ./android/app/src/main/assets/index.android.bundle --platform android --assets-dest ./android/app/src/main/res --dev false"
以后每次打包直接运行:
npm run bundle-ios
npm run bundle-android
到具体的rn控制器中,采用bundle的方式集成 main和打出来的bundle前面的名称对应
// jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil];
jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。