Nuxt Heroku部署问题,它使用localhost而不是网站url

问题描述 投票:1回答:1

这是我第一次将nuxt应用程序部署到heroku,我遵循了在nuxt指南中找到的说明。

创建了heroku应用并添加了以下配置:

enter image description here

在procfile中添加了以下行:web:nuxt start

enter image description here

并且它起作用了,当我转到https://coupongb-nuxt.herokuapp.com/时,打开了网站并加载了产品,但似乎“通过使用$ axios插件进行无限滚动不起作用,以及通过单击$打开了产品页面”产品卡”。

所以我想是因为$ axios导致了该错误,似乎它的baseURL是localhost:3000而不是网站域enter image description here

所以我的问题是如何使它。$ axios。$ get(...)指向网站域而不是localhost:300

node.js vue.js heroku deployment nuxt.js
1个回答
0
投票

您将需要为此设置环境变量。 https://cli.vuejs.org/guide/mode-and-env.html#environment-variables

无论您在哪里配置Axios,它都要查看环境变量来设置baseURL,例如:

Axios.defaults.baseURL = process.env.APP_API

然后在目录的根目录中创建.env文件:

APP_API=https://coupongb-nuxt.herokuapp.com/

或者,当您创建对api的调用时,也可以更改内联的baseurl:

this.$axios.get('/example-path')

将被替换为

this.$axios({ url: '/example-path', baseURL: 'https://coupongb-nuxt.herokuapp.com' })
© www.soinside.com 2019 - 2024. All rights reserved.