一个典型的 SvelteKit 项目看起来是这样的: ```tree my-project/ ├ src/ │ ├ lib/ │ │ ├ server/ │ │ │ └ [your server-only lib files] │ │ └ [your lib files] │ ├ params/ │ │ └ [your param matchers] │ ├ routes/ │ │ └ [your routes] │ ├ app.html │ ├ error.html │ ├ hooks.client.js │ ├ hooks.server.js │ └ service-worker.js ├ static/ │ └ [your static assets] ├ tests/ │ └ [your tests] ├ package.json ├ svelte.config.js ├ tsconfig.json └ vite.config.js ``` 您还将找到常见的文件,如`.gitignore`和`.npmrc`(以及`.prettierrc`和`eslint.config.js`等等,如果您在运行`npx sv create`时选择了这些选项)。 ## 项目文件 ### src The `src` 目录包含您项目的核心内容。除了 `src/routes` 和 `src/app.html` 之外的所有内容都是可选的。 * `lib` 包含您的库代码(实用工具和组件),可以通过 [`$lib`]($lib) 别名导入,或者使用 [`svelte-package`](packaging) 打包进行分发 * `服务器` 包含您的服务器专用库代码。您可以使用 [`$lib/server`](server-only-modules) 别名来导入。SvelteKit 将防止您在客户端代码中导入这些内容。 * `params` 包含任何您的应用需要的 [参数匹配器](advanced-routing#Matching) * `路由` 包含了您应用程序的 [路由](routing)。您还可以在此处放置仅用于单个路由的其他组件。 * `app.html` 是您的页面模板 — 一个包含以下占位符的 HTML 文档: * `%sveltekit.head%` — `` 和 `