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

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

  •  
  •   chenliangngng · 275 天前 · 1146 次点击
    这是一个创建于 275 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我本地 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  
       275 天前 via iPhone
    Vite3 还是 4 已经把 Unicode 改成中文了,我这边实际使用,Unicode 没遇到问题,升级 vitw 版本可以解决
    chenliangngng
        2
    chenliangngng  
    OP
       275 天前
    @zsj1029 我的问题是我代码里面的 unicode 变成中文了,我想阻止这个
    z13zvxc
        3
    z13zvxc  
       275 天前 via iPhone   ❤️ 1
    问题不在于 vite 是 esbuild 打包会转译 css 里面的 unicode 字符串。我没发现 esbuild 有什么选项能支持不转译,我的临时解决办法是把这个 css 文件独立出来直接在 index.html 引用,不让 esbuild 打包。
    oott123
        4
    oott123  
       275 天前
    chenliangngng
        5
    chenliangngng  
    OP
       275 天前
    @z13zvxc 试了下确实没什么解决方法,只能按你的方法把内容单独拉出来解决
    z13zvxc
        6
    z13zvxc  
       275 天前
    @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  
       275 天前
    我明白问题了
    我们需要 指定 esbuild 对指定问题文件 不使用 --charset=utf8
    比如:
    echo 'let \u03C0 = Math.PI' | esbuild
    let \u03C0 = Math.PI;
    得到的就是原始输入 现在问题其实是因为 vite 默认构建选项加了--charset=utf8
    Arthur2e5
        8
    Arthur2e5  
       275 天前 via iPhone
    一个不能把 utf8 字节好好标记成 utf8 字节的“生产环境”是更大的问题
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1168 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 18:44 · PVG 02:44 · LAX 11:44 · JFK 14:44
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.