将 Quasar 项目部署到 Netlify 时未定义流程
process is not defined when Deploying Quasar project to Netlify
我有一个 .env
文件,我使用 dotenv
包来管理该文件并将其提供给 quasar.config.js
中的 Quasar:
module.exports = configure(function (ctx) {
return {
// ...
build: {
// ...
env: {
...require('dotenv').config().parsed
}
}
// ...
}
}
根据我的经验,我知道在 Netlify 上我遇到了这个问题,因为当构建命令在文件夹 dist/spa
.[=19 中运行时,服务器上不存在 .env
文件=]
我尝试通过他们的 UI 添加环境变量,但即使在通过清除缓存重新部署后,错误仍然存在。
第一次在Netlify上部署,觉得很简单,不知道怎么解决环境变量问题
我已经使用 Github 操作部署到 Github 页面和其他服务器,我的做法是:
- 添加 GitHub 个秘密,内容为
.env
- 即时创建
.env
文件:
- name: Create env
env:
ENV: ${{ secrets.ENV }}
run: echo "$ENV" > ./.env
效果很好,但对于我的项目,我想尝试 Netlify,因为它很简单,而且我们不需要 GitHub 操作来启用自动部署。此外,它还有一些我喜欢的额外功能。
那么我在这里错过了什么?
我不知道这样做是否正确,但我通过更新 quasar.config.js
和实际上 re-defining 我所有的环境变量解决了这个问题:
module.exports = configure(function (ctx) {
require('dotenv').config()
return {
// ...
build: {
// ...
env: {
API: process.env.API,
ANOTHER_KEY: process.env.ANOTHER_KEY
}
}
// ...
}
}
我有一个 .env
文件,我使用 dotenv
包来管理该文件并将其提供给 quasar.config.js
中的 Quasar:
module.exports = configure(function (ctx) {
return {
// ...
build: {
// ...
env: {
...require('dotenv').config().parsed
}
}
// ...
}
}
根据我的经验,我知道在 Netlify 上我遇到了这个问题,因为当构建命令在文件夹 dist/spa
.[=19 中运行时,服务器上不存在 .env
文件=]
我尝试通过他们的 UI 添加环境变量,但即使在通过清除缓存重新部署后,错误仍然存在。
第一次在Netlify上部署,觉得很简单,不知道怎么解决环境变量问题
我已经使用 Github 操作部署到 Github 页面和其他服务器,我的做法是:
- 添加 GitHub 个秘密,内容为
.env
- 即时创建
.env
文件:
- name: Create env
env:
ENV: ${{ secrets.ENV }}
run: echo "$ENV" > ./.env
效果很好,但对于我的项目,我想尝试 Netlify,因为它很简单,而且我们不需要 GitHub 操作来启用自动部署。此外,它还有一些我喜欢的额外功能。
那么我在这里错过了什么?
我不知道这样做是否正确,但我通过更新 quasar.config.js
和实际上 re-defining 我所有的环境变量解决了这个问题:
module.exports = configure(function (ctx) {
require('dotenv').config()
return {
// ...
build: {
// ...
env: {
API: process.env.API,
ANOTHER_KEY: process.env.ANOTHER_KEY
}
}
// ...
}
}