You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Vite中使用vue-i18n翻译HTML?解决HTML检测报错问题

解决unplugin-vue-i18n检测HTML报错的问题

你当前的问题是把sanitizeHtml配置错了位置——它被放在了Rollup的输出配置里,这和unplugin-vue-i18n插件的检测规则无关。要解决HTML检测报错,需要修改VueI18nPlugin的配置:

  • 移除build.rollupOptions.output中的sanitizeHtml: false,这个配置对当前问题无效
  • 在VueI18nPlugin的配置对象中添加rules: { html: false },关闭插件对消息中HTML的检测规则

修改后的vite.config.js代码如下:

// Plugins
import vue from '@vitejs/plugin-vue'
import VueI18nPlugin from '@intlify/unplugin-vue-i18n/vite'
import vuetify, { transformAssetUrls } from 'vite-plugin-vuetify'

// Utilities
import { resolve, dirname } from 'node:path'
import { defineConfig } from 'vite'
import { fileURLToPath, URL } from 'node:url'

// https://vitejs.dev/config/
export default defineConfig({
  optimizeDeps: {
    include: ['@intlify/vite-plugin-vue-i18n']
  },
  build: {
    rollupOptions: {
      output: {
        // 移除无效的sanitizeHtml配置
      },
    },
  },
  plugins: [
    vue({
      template: { transformAssetUrls }
    }),
    VueI18nPlugin({
      include: resolve(dirname(fileURLToPath(import.meta.url)), './src/i18n/locales/**'),
      // 添加这行,关闭HTML检测规则
      rules: { html: false }
    }),
    vuetify({
      autoImport: true,
      styles: {
        configFile: 'src/styles/settings.scss',
      },
    }),
  ],
  define: { 'process.env': {} },
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    },
    extensions: [
      '.js',
      '.json',
      '.jsx',
      '.mjs',
      '.ts',
      '.tsx',
      '.vue',
    ],
  },
  server: {
    port: 3000,
  },
})

另外,如果你在创建vue-i18n实例时,也需要确保开启HTML支持,比如在src/i18n/index.js(或对应文件)中设置:

import { createI18n } from 'vue-i18n'
import messages from '@intlify/unplugin-vue-i18n/messages'

const i18n = createI18n({
  locale: 'en',
  fallbackLocale: 'en',
  messages,
  // 允许HTML在消息中渲染
  sanitizeHtml: false
})

export default i18n

这样就能同时解决插件检测报错和前端渲染HTML的问题。

内容的提问来源于stack exchange,提问作者Ingo Dahn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 23:24:56