vue.js - 使用 Axios baseURL 选项时远程服务器上的空白页面

标签 vue.js environment-variables nuxt.js

当部署在远程服务器上时,我的应用程序是空白/空的,但在本地运行良好(两种情况下都构建相同的静态站点)。仅当我在 Axios 中提供完整的绝对路径时,它才能在远程服务器上运行调用,但是如果我使用 AxiosbaseURL nuxt.config.js 中的选项然后应用程序在远程服务器上是空白的。

这是怎么回事?

.环境:

BASE_URL=https://path.to.cdn

nuxt.config.js:

publicRuntimeConfig: {
  baseURL: process.env.BASE_URL,
  axios: {
    browserBaseURL: process.env.BASE_URL
  }
},
axios: {
  baseURL: process.env.BASE_URL,
},

最佳答案

在我上面的评论之上,我可能会补充说,这是使 axios 正常工作的可行且灵活的配置。

// nuxt.config.js
publicRuntimeConfig: {
  baseUrl: process.env.BASE_URL,
},

...

plugins: [
  '~/plugins/nuxt-axios.js',
],
// plugins/nuxt-axios.js
export default ({ $axios, $config: { baseUrl } }) => {
  $axios.defaults.baseURL = baseUrl
}

您也可以尝试使用官方文档中的替代语法:https://axios.nuxtjs.org/options#runtime-config

publicRuntimeConfig: {
  axios: {
    browserBaseURL: process.env.BROWSER_BASE_URL
  }
},

关于vue.js - 使用 Axios baseURL 选项时远程服务器上的空白页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66660384/

相关文章:

javascript - Axios:不进入错误的 catch 方法

java - System.getenv() 方法 - 是否已弃用?

javascript - Nuxt.js 中的条件模块加载

vue.js - toast 未识别

javascript - 我可以修改 Vue.js VNodes 吗?

vue.js - 为什么在 Vue.js 上 @keydown.alt 有效,但 @keyup.alt 无效?

vue.js - 如何导航到 vue 路由中 Bootstrap-vue 选项卡中的特定选项卡?

Python 获取系统环境变量 Linux

linux - Shell 变量扩展 - 使用 env 调用实用程序时的间接寻址

routes - 如果目标设置为 'static',Nuxt.js 路由中间件问题