From 13384ab77239f29d21584f463d7cf8a6ba13ae29 Mon Sep 17 00:00:00 2001 From: qcqcqc <1220204124@zust.edu.cn> Date: Sun, 4 Jan 2026 16:59:25 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=A8=A1=E6=9D=BF=E4=BD=BF=E7=94=A8?= =?UTF-8?q?=E6=96=B0build.js=E7=BC=96=E8=AF=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- lib/template.js | 12 +++++++++--- src/template.ts | 12 +++++++++--- template/scripts/build.js | 6 ++++++ 3 files changed, 24 insertions(+), 6 deletions(-) create mode 100644 template/scripts/build.js diff --git a/lib/template.js b/lib/template.js index b1d2bfc..610982d 100644 --- a/lib/template.js +++ b/lib/template.js @@ -85,7 +85,7 @@ function packageJsonContent({ name, version, description, cliName, cliBinName, i "build-analyze:mp:staging": "${cliBinName} build --target mp --mode staging --analyze", "build:mp": "${cliBinName} build --target mp --mode production", "build-analyze:mp": "${cliBinName} build --target mp --mode production --analyze", - "build:watch": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json && npm run server:start:watch", + "build:watch": "node --stack-size=4096 ./scripts/build.js -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json && npm run server:start:watch", "start:web": "${cliBinName} start --target web --mode development --devMode frontend", "start:web:server": "${cliBinName} start --target web --mode development", "start:native": "${cliBinName} start --target rn --mode development --devMode frontend", @@ -97,7 +97,7 @@ function packageJsonContent({ name, version, description, cliName, cliBinName, i "build-sourcemap:web": "${cliBinName} build --target web --mode production --sourcemap", "build-analyze:web": "${cliBinName} build --target web --mode production --analyze", "build-sourcemap-analyze:web": "${cliBinName} build --target web --mode production --sourcemap --analyze", - "build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json", + "build": "node --stack-size=4096 ./scripts/build.js -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json", "prebuild": "npm run make:locale", "run:ios": "oak-cli run -p ios", "run:android": "oak-cli run -p android", @@ -397,7 +397,13 @@ function tsConfigBuildJsonContent() { "test", "src/pages/**/*", "src/components/**/*" - ] + ], + "oakBuildChecks": { + "context": { + "checkAsyncContext": true, + "targetModules": ["context/BackendRuntimeContext"] + } + } }`; } function tsConfigPathsJsonContent(deps) { diff --git a/src/template.ts b/src/template.ts index 61fb3c6..abe7f88 100644 --- a/src/template.ts +++ b/src/template.ts @@ -92,7 +92,7 @@ export function packageJsonContent({ "build-analyze:mp:staging": "${cliBinName} build --target mp --mode staging --analyze", "build:mp": "${cliBinName} build --target mp --mode production", "build-analyze:mp": "${cliBinName} build --target mp --mode production --analyze", - "build:watch": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json && npm run server:start:watch", + "build:watch": "node --stack-size=4096 ./scripts/build.js -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json && npm run server:start:watch", "start:web": "${cliBinName} start --target web --mode development --devMode frontend", "start:web:server": "${cliBinName} start --target web --mode development", "start:native": "${cliBinName} start --target rn --mode development --devMode frontend", @@ -104,7 +104,7 @@ export function packageJsonContent({ "build-sourcemap:web": "${cliBinName} build --target web --mode production --sourcemap", "build-analyze:web": "${cliBinName} build --target web --mode production --analyze", "build-sourcemap-analyze:web": "${cliBinName} build --target web --mode production --sourcemap --analyze", - "build": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json", + "build": "node --stack-size=4096 ./scripts/build.js -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && npm run copy-config-json", "prebuild": "npm run make:locale", "run:ios": "oak-cli run -p ios", "run:android": "oak-cli run -p android", @@ -406,7 +406,13 @@ export function tsConfigBuildJsonContent() { "test", "src/pages/**/*", "src/components/**/*" - ] + ], + "oakBuildChecks": { + "context": { + "checkAsyncContext": true, + "targetModules": ["context/BackendRuntimeContext"] + } + } }`; } diff --git a/template/scripts/build.js b/template/scripts/build.js new file mode 100644 index 0000000..5907633 --- /dev/null +++ b/template/scripts/build.js @@ -0,0 +1,6 @@ +/* eslint-disable @typescript-eslint/no-require-imports */ +const { build } = require('oak-domain/lib/compiler/tscBuilder.js') + +const pwd = process.cwd(); + +build(pwd, process.argv); \ No newline at end of file