Vite无法识别src文件夹?SvelteKit+Socket.IO项目启动报错
SvelteKit项目Vite配置中src别名失效导致模块缺失错误
我有一个使用Socket.IO实现WebSocket通信的SvelteKit项目,需要在vite.config.ts的插件中运行WebSocket服务器初始化函数。vite.config.ts本身无语法错误,但执行npm run dev时,出现无法找到'src'包的模块缺失错误。此前该配置可正常运行,现在问题出现在首次使用import x from "src/..."的导入语句处。我已在svelte.config.js、vite.config.ts和.svelte-kit/tsconfig.json中配置了src别名,但报错依然存在。尝试过重启编辑器、更换导入方式、重启电脑均无效。
相关代码与配置
vite.config.ts
import { defineConfig } from 'vite'; import { sveltekit } from '@sveltejs/kit/vite'; import type http from 'http'; import initSocketIoServer from './src/lib/server/socketIoServer'; export default defineConfig({ plugins: [ sveltekit(), { name: 'vite-plugin-socket-io', configureServer(server) { initSocketIoServer(server.httpServer as http.Server); }, }, ], });
报错信息
failed to load config from C:\vs_code_projects\TypeScript\ej_coop\vite.config.ts error when starting dev server: Error [ERR_MODULE_NOT_FOUND]: Cannot find package 'src' imported from C:\vs_code_projects\TypeScript\ej_coop\vite.config.ts.timestamp-1692059596974-1e8475088e131.mjs at new NodeError (node:internal/errors:387:5) at packageResolve (node:internal/modules/esm/resolve:951:9) at moduleResolve (node:internal/modules/esm/resolve:1000:20) at defaultResolve (node:internal/modules/esm/resolve:1214:11) at nextResolve (node:internal/modules/esm/loader:165:28) at ESMLoader.resolve (node:internal/modules/esm/loader:844:30) at ESMLoader.getModuleJob (node:internal/modules/esm/loader:431:18) at ModuleWrap.<anonymous> (node:internal/modules/esm/module_job:76:40) at link (node:internal/modules/esm/module_job:75:36)
svelte.config.js
import adapter from '@sveltejs/adapter-node'; import { vitePreprocess } from '@sveltejs/kit/vite'; /** @type {import('@sveltejs/kit').Config} */ const config = { preprocess: vitePreprocess(), kit: { adapter: adapter(), alias: { src: 'src' }, }, }; export default config;
.svelte-kit/tsconfig.json
{ "compilerOptions": { "paths": { "src": [ "../src" ], "src/*": [ "../src/*" ], "$lib": [ "../src/lib" ], "$lib/*": [ "../src/lib/*" ] }, "rootDirs": [ "..", "./types" ], "importsNotUsedAsValues": "error", "isolatedModules": true, "preserveValueImports": true, "lib": [ "esnext", "DOM", "DOM.Iterable" ], "moduleResolution": "node", "module": "esnext", "target": "esnext", "ignoreDeprecations": "5.0" }, "include": [ "ambient.d.ts", "./types/**/$types.d.ts", "../vite.config.ts", "../src/**/*.js", "../src/**/*.ts", "../src/**/*.svelte", "../tests/**/*.js", "../tests/**/*.ts", "../tests/**/*.svelte" ], "exclude": [ "../node_modules/**", "./[!ambient.d.ts]**", "../src/service-worker.js", "../src/service-worker.ts", "../src/service-worker.d.ts" ] }
内容的提问来源于stack exchange,提问作者Lodea
相关产品推荐
相关产品推荐

