vue3+typescript 使用 "pako": "^2.1.0"运行后,项目直接报错。
错误内容如下:
✘ [ERROR] Unbalanced delimiter found in string [plugin uni:dep-scan]
node_modules/xregexp/src/addons/matchrecursive.js:176:22:
176 │ throw new Error('Unbalanced delimiter found in string');
╵ ^
at Function.XRegExp.matchRecursive (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/xregexp/src/addons/matchrecursive.js:176:23)
at matchReplacePass (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/@dcloudio/uni-cli-shared/lib/preprocess/lib/preprocess.js:310:27)
at replaceRecursive (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/@dcloudio/uni-cli-shared/lib/preprocess/lib/preprocess.js:340:10)
at preprocessor (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/@dcloudio/uni-cli-shared/lib/preprocess/lib/preprocess.js:165:10)
at preprocess (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/@dcloudio/uni-cli-shared/lib/preprocess/lib/preprocess.js:89:10)
at preJs (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/@dcloudio/uni-cli-shared/dist/preprocess/index.js:13:12)
at /Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/@dcloudio/uni-h5-vite/dist/plugin/esbuild/esbuildPrePlugin.js:22:63
at requestCallbacks.on-load (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/esbuild/lib/main.js:1435:28)
at handleRequest (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/esbuild/lib/main.js:732:17)
at handleIncomingPacket (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/esbuild/lib/main.js:757:7)
This error came from the "onLoad" callback registered here:
node_modules/@dcloudio/uni-h5-vite/dist/plugin/esbuild/esbuildPrePlugin.js:15:18:
15 │ build.onLoad({ filter: exports.JS_TYPES_RE }, ({ path: id }) => {
╵ ~~~~~~
at setup (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/@dcloudio/uni-h5-vite/dist/plugin/esbuild/esbuildPrePlugin.js:15:19)
at handlePlugins (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/esbuild/lib/main.js:1293:21)
at buildOrContextImpl (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/esbuild/lib/main.js:979:5)
at Object.buildOrContext (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/esbuild/lib/main.js:788:5)
at /Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/esbuild/lib/main.js:2224:68
at new Promise (<anonymous>)
at Object.context (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/esbuild/lib/main.js:2224:27)
at Object.context (/Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/esbuild/lib/main.js:2048:58)
at prepareEsbuildOptimizerRun (file:///Users/xiezhenggen/AndroidStudioProjects/HBuilderProjects/2024/07/my-vue3-07-23/node_modules/vite/dist/node/chunks/dep-whKeNLxG.js:52821:35)
18:18:16 [vite] Build failed with 1 error:
node_modules/xregexp/src/addons/matchrecursive.js:176:22: ERROR: [plugin: uni:dep-scan] Unbalanced delimiter found in string
1 个回复
m***@126.com
一模一样的问题,跟踪了一下发现matchRecursive预校验pako里zlib库文件莫名其妙的报错了, 在pako.esm.mjs 这个文件里存在和uniapp类似的条件编译注释,比如//#ifdef GZIP,删除就好了
我是把pako主入口改成pako.es5.min.js就正常了.......