如果您正在构建一个需要访问 Nuxt 使用的运行时 Vite 或 webpack 配置的集成,则可以使用 Kit 工具提取此配置。
一些已经这样做的项目示例
这是一个关于如何从项目中访问 Vite 配置的简要示例;您可以采用类似的方法来获取 webpack 配置。
import { buildNuxt, loadNuxt } from '@nuxt/kit'
// https://github.com/nuxt/nuxt/issues/14534
async function getViteConfig () {
const nuxt = await loadNuxt({ cwd: process.cwd(), dev: false, overrides: { ssr: false } })
return new Promise((resolve, reject) => {
nuxt.hook('vite:extend', (config) => {
resolve(config)
throw new Error('_stop_')
})
buildNuxt(nuxt).catch((err) => {
if (!err.toString().includes('_stop_')) {
reject(err)
}
})
}).finally(() => nuxt.close())
}
const viteConfig = await getViteConfig()
console.log(viteConfig)