在 svelte.config.js 中找不到 SvelteKit $app
Posted
技术标签:
【中文标题】在 svelte.config.js 中找不到 SvelteKit $app【英文标题】:SvelteKit $app cannot be found in svelte.config.js 【发布时间】:2022-01-17 05:42:43 【问题描述】:我根据文档安装了新的 SvelteKit,如果我尝试在 svelte 配置中使用 $app
,则会收到此错误。
svelte.config.js 中的错误
错误 [ERR_MODULE_NOT_FOUND]:找不到从 /Users/username/projects/my-app/svelte.config.js 导入的包“$app”
代码看起来像 -
import preprocess from 'svelte-preprocess';
import adapter from '@sveltejs/adapter-static';
import dev from '$app/env';
/** @type import('@sveltejs/kit').Config */
const config =
// Consult https://github.com/sveltejs/svelte-preprocess
// for more information about preprocessors
preprocess: preprocess(),
kit:
adapter: adapter(),
paths:
base: dev ? '' : '/CapitalBikesProject'
,
// hydrate the <div id="svelte"> element in src/app.html
target: '#svelte'
;
export default config;
如何在配置 javascript 文件中访问开发模式?谢谢!
【问题讨论】:
【参考方案1】:很好的问题。解决方案是这样的,如果你需要你需要的环境,你不能在配置文件中使用$app
,你可以使用返回字符串production
和development
的process.env.NODE_ENV
把你的svelte.config.js
改成这个。
import preprocess from 'svelte-preprocess';
import adapter from '@sveltejs/adapter-static';
/** @type import('@sveltejs/kit').Config */
const config =
// Consult https://github.com/sveltejs/svelte-preprocess
// for more information about preprocessors
preprocess: preprocess(),
kit:
adapter: adapter(),
paths:
base: process.env.NODE_ENV === 'development' ? '' : '/CapitalBikesProject'
,
// hydrate the <div id="svelte"> element in src/app.html
target: '#svelte'
;
export default config;
【讨论】:
以上是关于在 svelte.config.js 中找不到 SvelteKit $app的主要内容,如果未能解决你的问题,请参考以下文章