首页 注册 登录
V2EX = way to explore V2EX 是一个关于分享和探索的地方
现在注册 已注册用户请 登录
V2EX Vite

vite 有什么插件会把 unicode 转成中文吗

chenliangngng · 2023 年 8 月 22 日 · 3438 次点击
这是一个创建于 872 天前的主题,其中的信息可能已经有所发展或是发生改变。
我本地 css 代码里面中文都是用 unicode 写的,本地调试没问题。

但是 build 之后 unicode 变成了中文(直接看 dist 里面的 css),导致生产环境偶发中文乱码。

项目是 vue3+vite+antdv


其他插件
```
"@vitejs/plugin-vue":"^2.3.1",
"@vitejs/plugin-vue-jsx":."^1.3.10",
"vite":"^2.9.7",
"vite-babel-plugin":"0.0.2",
"vite-plugin-cesium":"1.2.10",
"vite-plugin-commonjs-externals":"00.1.1",
```
8 条回复 2023年08月22日 20:57:20 +08:00
zsj1029
1
zsj1029 2023 年 8 月 22 日 via iPhone
Vite3 还是 4 已经把 Unicode 改成中文了,我这边实际使用,Unicode 没遇到问题,升级 vitw 版本可以解决
chenliangngng
2
chenliangngng
OP
2023 年 8 月 22 日
@zsj1029 我的问题是我代码里面的 unicode 变成中文了,我想阻止这个
z13zvxc
3
z13zvxc 2023 年 8 月 22 日 via iPhone ❤️ 1
问题不在于 vite 是 esbuild 打包会转译 css 里面的 unicode 字符串。我没发现 esbuild 有什么选项能支持不转译,我的临时解决办法是把这个 css 文件独立出来直接在 index.html 引用,不让 esbuild 打包。
oott123
4
oott123 2023 年 8 月 22 日
chenliangngng
5
chenliangngng
OP
2023 年 8 月 22 日
@z13zvxc 试了下确实没什么解决方法,只能按你的方法把内容单独拉出来解决
z13zvxc
6
z13zvxc 2023 年 8 月 22 日
@oott123
问题是期望
echo 'let \u03C0 = Math.PI' | esbuild --charset=utf8
let \u03C0 = Math.PI;
实际是
echo 'let \u03C0 = Math.PI' | esbuild --charset=utf8
let π = Math.PI;
z13zvxc
7
z13zvxc 2023 年 8 月 22 日
我明白问题了
我们需要 指定 esbuild 对指定问题文件 不使用 --charset=utf8
比如:
echo 'let \u03C0 = Math.PI' | esbuild
let \u03C0 = Math.PI;
得到的就是原始输入 现在问题其实是因为 vite 默认构建选项加了--charset=utf8
Arthur2e5
8
Arthur2e5 2023 年 8 月 22 日 via iPhone
一个不能把 utf8 字节好好标记成 utf8 字节的"生产环境"是更大的问题
关于 · 帮助文档 · 自助推广系统 · 博客 · API · FAQ · Solana · 2746 人在线 最高记录 6679 · Select Language 创意工作者们的社区 World is powered by solitude VERSION: 3.9.8.5 · 38ms · UTC 14:44 · PVG 22:44 · LAX 06:44 · JFK 09:44
♥ Do have faith in what you're doing.

AltStyle によって変換されたページ (->オリジナル) /