参考: https://juejin.cn/post/7239631010430107704#heading-3

app.config

app.config 用于在构建时公开可以确定的公共变量,例如主题变体、标题或其他非敏感项目配置。这些值在 app.config.ts 文件中设置。

export default defineAppConfig({
  AppName: "MikuMikuCloudDrive",
  Api: {
    baseUrl: "http://127.0.0.1:8888",
    timeout: 30000,
  },
});

使用

<script setup lang="ts">
const appConfig = useAppConfig()
console.log(appConfig.AppName)
</script>

runtimeConfig

runtimeConfig 用于在应用程序中公开环境变量和私有令牌,例如 API 密钥或其他敏感信息。这些值可以在 nuxt.config.ts 文件中设置,并且可以使用环境变量进行覆盖。

export default defineNuxtConfig({
  runtimeConfig: {
    // 仅在服务器端可用的私钥
    shoeStoreApiSecret: 'my-secret-key',
    // public文件夹中的密钥也会在客户端暴露出来。
    public: {
      shoeStoreApiBase: '/shoe-api'
    }
  }
})

appConfig和runtimeConfig对比