示例

Nuxt Kit 实用工具的使用示例。

访问 Nuxt Vite 配置

如果您正在构建需要访问 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)