使用esbuild打包时如何保留名称中的Unicode字符?
如何让esbuild保留Unicode标识符(如π)
在test.ts中编写以下代码:
const π: number = 3.14
执行命令 esbuild .\test.ts 后,输出被转义为:
const \u03C0 = 3.14;
想要保留变量名π,同时让函数名、类名、类型、接口等Unicode名称也不被转义,可以通过指定字符编码为UTF-8来实现:
解决方法
命令行直接指定参数
执行命令时添加--charset=utf8选项:
esbuild .\test.ts --charset=utf8
通过配置文件设置
如果使用esbuild配置文件(如esbuild.config.js),在配置中添加charset: 'utf8':
require('esbuild').build({ entryPoints: ['test.ts'], outfile: 'dist/test.js', charset: 'utf8', // 其他所需配置项 }).catch(() => process.exit(1))
设置后,输出会保留原始的Unicode标识符:
const π = 3.14;
内容的提问来源于stack exchange,提问作者Ooker
相关产品推荐
相关产品推荐

