我想使用svelte工具包为暂存环境构建一个svelte应用程序。我没有找到一个合适的命令来将.env.staging
作为其配置。
当我执行svelte-kit build
时,它总是使用.env.production
请帮助我如何构建临时环境。
https://github.com/vitejs/vite/issues/512#issuecomment-656547187-检查这个答案(和主题),有一些解决办法。
答案副本:
"scripts": {
"build:dev": "APP_ENV=development vite build",
"build:prod": "APP_ENV=production vite build",
}
在你的vite.config.js中,现在你可以操作它:
const mode = process.env.APP_ENV // This now exists.
module.exports = {
mode: mode, // This will set the mode, to avoid confusions.
}
还有另一个github问题:https://github.com/sveltejs/kit/issues/1258
David的回答一直对我有效,直到"@sveltejs/kit": "^1.0.0"
。现在我使用:
"scripts": {
...
"stage": "vite build --mode staging",
"prod": "vite build --mode production",
...
经由CCD_ 5来构建以用于暂存以及CCD_。这些命令映射到项目根目录下的.env.stage
和.env.production
文件。
在最近的SvelteKit版本中,例如1.0.0-next.370
,构建脚本svelte-kit
已被直接使用vite
所取代
曾经是:
"scripts": {
"dev": "svelte-kit dev",
"build": "svelte-kit build",
现在是:
"scripts": {
"dev": "vite dev",
"build": "vite build",
因此,可以使用Vite环境配置文件(文档)。
例如,如果您想创建一个包含暂存变量的.env.staging
文件,您可以在`package.json:中添加以下脚本
"scripts": {
"dev": "vite dev",
"build": "vite build",
"staging": "npm run dev -- --mode staging"
它可以在命令行中与相应的目标一起运行
> npm run staging