You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SvelteKit应用中无法找到$env包问题求助

解决SvelteKit中$env包找不到的问题

先排查核心前提

  • 确认你创建的是SvelteKit项目,而非普通Svelte项目:查看根目录的package.json,确保包含@sveltejs/kit依赖,且scripts里有dev/build等SvelteKit命令。如果是普通Svelte项目,$env特性本身不支持,需要重新用SvelteKit模板创建项目。
  • 检查Node.js版本:SvelteKit要求Node.js 16.14.0或更高版本,执行node -v查看版本,不符合则升级。

修正导入路径错误

$env是SvelteKit的模块化环境变量方案,必须指定具体的子模块,不能直接导入$env包:

  • 客户端代码(如+page.svelte、组件)导入公开环境变量:
    import { PUBLIC_YOUR_VAR } from '$env/static/public';
    
  • 服务器端代码(如+page.server.js、+server.js)导入私有环境变量:
    import { PRIVATE_YOUR_VAR } from '$env/static/private';
    // 或动态获取(仅服务器端可用)
    import { env } from '$env/dynamic/private';
    

升级SvelteKit版本

$env是SvelteKit 1.0及以上版本的特性,旧版本不支持。执行以下命令升级到最新稳定版:

npm install @sveltejs/kit@latest svelte@latest

重置依赖缓存

如果以上步骤无效,删除依赖文件重新安装:

  1. 删除根目录的node_modules文件夹和package-lock.json(或yarn.lock)
  2. 执行npm install(或yarn install)
  3. 重启开发服务器(npm run dev)

确认环境变量配置正确

  • 根目录创建.env文件,公开变量必须以PUBLIC_开头,例如:
    PUBLIC_API_BASE_URL=https://your-api.com
    PRIVATE_DB_PASSWORD=xxx
    
  • 确保.env文件在项目根目录,而非src文件夹内。

内容的提问来源于stack exchange,提问作者vitormisumi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.25 18:12:06