繁体   English   中英

plugin:vite:import-analysis - 无法解析源以进行导入分析,因为内容包含无效的 JS 语法。 - Vue 3

[英]plugin:vite:import-analysis - Failed to parse source for import analysis because the content contains invalid JS syntax. - Vue 3

我已经将我的项目从 Vite 2.x 更新到 Vite 3.0.2,突然我收到了这个错误:

[plugin:vite:import-analysis] 无法解析源进行导入分析,因为内容包含无效的 JS 语法。 如果您使用 JSX,请确保使用 .jsx 或 .tsx 扩展名命名文件。

/卷/磁盘/Web/wce-system/src/i18n.js:51:20

由于内容包含无效的 JS 语法,无法解析源以进行导入分析。

i18n.js 文件没有任何问题,因为它在 Vite 2.x 上运行良好,但我将代码放在这里以防万一:

import { nextTick } from "vue"
import { createI18n } from "vue-i18n"
import axios from "axios"
import tr from "@/locales/tr.json"
import en from "@/locales/en.json"

export const SUPPORT_LOCALES = ["tr", "en"]

export function setupI18n(options = { locale: "tr" }) {
const i18n = createI18n(options)
setI18nLanguage(i18n, options.locale)
  return i18n
}

export function setI18nLanguage(i18n, locale, url) {
  if (i18n.mode === "legacy") {
  i18n.global.locale = locale
} else {
  i18n.global.locale.value = locale
}       
axios.defaults.headers.common["Accept-Language"] = locale
document.querySelector("html").setAttribute("lang", locale)
}

export async function loadLocaleMessages(i18n, locale) {
 const messages = await import(
/* webpackChunkName: "locale-[request]" */ `./locales/${locale}.json`
)

i18n.global.setLocaleMessage(locale, messages.default)
 return nextTick()
}

const i18n = createI18n({
  legacy: false,
  locale: "tr",
  fallbackLocale: "tr",
  globalInjection: true,
  messages: {
    tr,
    en,
  },
})

export default i18n

所以我想通了。 这一行:

const messages = await import(
  /* webpackChunkName: "locale-[request]" */ `./locales/${locale}.json`
)

本来应该:

 const messages = await import(`./locales/${locale}.json`)

我无法解释为什么会这样,但我在下面留下了关于问题的链接。

Vite 动态导入

可能有助于进一步调查

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM