react-native ios build main.jsbundle

This commit is contained in:
wkj 2025-06-16 10:18:50 +08:00
parent d993e0af9b
commit ffc75d4b91
2 changed files with 71 additions and 32 deletions

View File

@ -132,13 +132,14 @@ export default async function build(cmd: any) {
let result; let result;
if (mode === 'production') { if (mode === 'production') {
//cd native/android && cross-env NODE_ENV=production ./gradlew assembleRelease //cd native/android && cross-env NODE_ENV=production ./gradlew assembleRelease
if (platform === 'android') {
result = spawn.sync( result = spawn.sync(
`cd android`, `cd android`,
[ [
'&& cross-env', '&& cross-env',
`NODE_ENV=${mode}`, `NODE_ENV=${mode}`,
'OAK_PLATFORM=native', 'OAK_PLATFORM=native',
`OAK_DEV_MODE=${devMode}`, `OAK_DEV_MODE=server`,
'./gradlew assembleRelease', './gradlew assembleRelease',
].filter(Boolean), ].filter(Boolean),
{ {
@ -147,15 +148,35 @@ export default async function build(cmd: any) {
shell: true, shell: true,
} }
); );
}
else {
// cd native && cross-env NODE_ENV=staging OAK_PLATFORM=native OAK_DEV_MODE=server react-native bundle --entry-file='index.js' --bundle-output='./ios/main.jsbundle' --dev=false --platform='ios'
result = spawn.sync(
`cd native`,
[
'&& cross-env',
`NODE_ENV=${mode}`,
'OAK_PLATFORM=native',
`OAK_DEV_MODE=server`,
"react-native bundle --entry-file='index.js' --bundle-output='./ios/main.jsbundle' --dev=false --platform='ios'",
].filter(Boolean),
{
cwd,
stdio: 'inherit',
shell: true,
}
);
}
} else if (mode === 'staging') { } else if (mode === 'staging') {
//cd native/android && cross-env NODE_ENV=production ./gradlew assembleStaging //cd native/android && cross-env NODE_ENV=production ./gradlew assembleStaging
if (platform === 'android') {
result = spawn.sync( result = spawn.sync(
`cd android`, `cd android`,
[ [
'&& cross-env', '&& cross-env',
`NODE_ENV=${mode}`, `NODE_ENV=${mode}`,
'OAK_PLATFORM=native', 'OAK_PLATFORM=native',
`OAK_DEV_MODE=${devMode}`, `OAK_DEV_MODE=server`,
'./gradlew assembleStaging', './gradlew assembleStaging',
].filter(Boolean), ].filter(Boolean),
{ {
@ -164,6 +185,24 @@ export default async function build(cmd: any) {
shell: true, shell: true,
} }
); );
}
else {
result = spawn.sync(
`cd native`,
[
'&& cross-env',
`NODE_ENV=${mode}`,
'OAK_PLATFORM=native',
`OAK_DEV_MODE=server`,
"react-native bundle --entry-file='index.js' --bundle-output='./ios/main.jsbundle' --dev=false --platform='ios'",
].filter(Boolean),
{
cwd,
stdio: 'inherit',
shell: true,
}
);
}
} else { } else {
result = spawn.sync( result = spawn.sync(
`cross-env`, `cross-env`,
@ -173,7 +212,7 @@ export default async function build(cmd: any) {
`OAK_DEV_MODE=${devMode}`, `OAK_DEV_MODE=${devMode}`,
'react-native', 'react-native',
'start', 'start',
cmd.resetCache && '--reset-cache', cmd.reset && '--reset-cache',
].filter(Boolean), ].filter(Boolean),
{ {
cwd, cwd,

View File

@ -79,7 +79,7 @@ program
.option('-d, --subDir <subDirName>', 'subDirName') .option('-d, --subDir <subDirName>', 'subDirName')
.option('-p, --port <port>', 'port') .option('-p, --port <port>', 'port')
.option('-dm, --devMode <devMode>', 'devMode') .option('-dm, --devMode <devMode>', 'devMode')
.option('--resetCache', 'react native start --reset-cache') .option('--reset', 'react native start --reset-cache')
.description('build project of start on demand') .description('build project of start on demand')
.action(build); .action(build);