如何让esbuild编译server目录下所有子文件夹的.ts文件?
解决esbuild遍历Fastify项目server目录所有子文件夹的问题
简化glob匹配模式:你不需要重复写多层
server/**/**/*.ts,单个server/**/*.ts就能匹配server目录下任意层级子文件夹中的所有.ts文件。修改后的命令为:esbuild server/**/*.ts --bundle --platform=node --outdir=dist适配@fastify/autoload的动态加载场景:由于@fastify/autoload是运行时动态加载文件,esbuild的静态分析无法自动识别这些未被主入口导入的文件。通过
server/**/*.ts将所有.ts文件作为编译入口,就能确保这些动态加载的文件被全部编译到dist目录中。使用配置文件更高效(可选):可以创建
esbuild.config.js来管理编译配置,避免每次输入长命令:require('esbuild').build({ entryPoints: ['server/**/*.ts'], bundle: true, platform: 'node', outdir: 'dist', // 保留原目录结构,适配autoload的路径查找逻辑 entryNames: '[dir]/[name]' }).catch(() => process.exit(1))运行时只需执行:
node esbuild.config.js
内容的提问来源于stack exchange,提问作者Charklewis
相关产品推荐
相关产品推荐

