uni-app icon indicating copy to clipboard operation
uni-app copied to clipboard

ESM 支持

Open RunningCoderLee opened this issue 8 months ago • 0 comments

请问 uni-app 什么时候支持 ESM 呢

现在引入一些 ESM 包时会报错,比如 strip-json-comments 这个包,如果我在 vite.config.ts 中引入并使用就会报下面的错误

> uni -p mp-weixin

Please note that in running mode, due to log output, sourcemap, and uncompressed source code, the performance and package size are not as good as release mode.To officially release, please click the release menu or use the cli release command to release
Compiling...
✘ [ERROR] "strip-json-comments" resolved to an ESM file. ESM file cannot be loaded by `require`. See https://vitejs.dev/guide/troubleshooting.html#this-package-is-esm-only for more details. [plugin externalize-deps]

    node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1374:27:
      1374 │         let result = await callback({
           ╵                            ^

    at file:///Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]_@[email protected][email protected][email protected]/node_modules/vite/dist/node/chunks/dep-whKeNLxG.js:68630:35
    at requestCallbacks.on-resolve (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1374:28)
    at handleRequest (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:732:17)
    at handleIncomingPacket (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:757:7)
    at Socket.readFromStdout (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:680:7)
    at Socket.emit (node:events:518:28)
    at addChunk (node:internal/streams/readable:559:12)
    at readableAddChunkPushByteMode (node:internal/streams/readable:510:3)
    at Readable.push (node:internal/streams/readable:390:5)
    at Pipe.onStreamRead (node:internal/stream_base_commons:190:23)

  This error came from the "onResolve" callback registered here:

    node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1293:20:
      1293 │       let promise = setup({
           ╵                     ^

    at setup (file:///Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]_@[email protected][email protected][email protected]/node_modules/vite/dist/node/chunks/dep-whKeNLxG.js:68594:27)
    at handlePlugins (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1293:21)
    at buildOrContextImpl (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:979:5)
    at Object.buildOrContext (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:788:5)
    at /Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:2215:15
    at new Promise (<anonymous>)
    at Object.build (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:2214:25)
    at build (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:2047:51)
    at bundleConfigFile (file:///Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]_@[email protected][email protected][email protected]/node_modules/vite/dist/node/chunks/dep-whKeNLxG.js:68553:26)

  The plugin "externalize-deps" was triggered by this import

    vite.config.ts:4:30:
      4 │ import stripJsonComments from 'strip-json-comments'
        ╵                               ~~~~~~~~~~~~~~~~~~~~~

failed to load config from /Users/kevin/Developer/github/uni-app-devtool/vite.config.ts
error during build:
Error: Build failed with 1 error:
node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1374:27: ERROR: [plugin: externalize-deps] "strip-json-comments" resolved to an ESM file. ESM file cannot be loaded by `require`. See https://vitejs.dev/guide/troubleshooting.html#this-package-is-esm-only for more details.
    at failureErrorWithLog (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1651:15)
    at /Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1059:25
    at runOnEndCallbacks (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1486:45)
    at buildResponseToResult (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1057:7)
    at /Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:1086:16
    at responseCallbacks.<computed> (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:704:9)
    at handleIncomingPacket (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:764:9)
    at Socket.readFromStdout (/Users/kevin/Developer/github/uni-app-devtool/node_modules/.pnpm/[email protected]/node_modules/esbuild/lib/main.js:680:7)
    at Socket.emit (node:events:518:28)
    at addChunk (node:internal/streams/readable:559:12)
 ELIFECYCLE  Command failed with exit code 1.

RunningCoderLee avatar Jun 13 '24 12:06 RunningCoderLee