Svelte-Use-Form 开源项目教程
1. 项目的目录结构及介绍
svelte-use-form/
├── src/
│ ├── lib/
│ │ ├── actions/
│ │ │ ├── form.js
│ │ │ └── index.js
│ │ ├── utils/
│ │ │ ├── index.js
│ │ │ └── validate.js
│ │ └── index.js
│ ├── App.svelte
│ └── main.js
├── public/
│ ├── index.html
│ └── favicon.ico
├── package.json
├── README.md
└── rollup.config.js
目录结构介绍
- src/: 源代码目录,包含所有Svelte组件和逻辑。
- lib/: 库文件目录,包含表单相关的动作和工具函数。
- actions/: 包含表单动作的实现。
- form.js: 表单动作的主要实现文件。
- index.js: 动作的入口文件。
- utils/: 包含工具函数。
- index.js: 工具函数的入口文件。
- validate.js: 表单验证工具函数。
- index.js: 库的入口文件。
- actions/: 包含表单动作的实现。
- App.svelte: 主应用组件。
- main.js: 应用的入口文件。
- lib/: 库文件目录,包含表单相关的动作和工具函数。
- public/: 公共资源目录,包含HTML文件和图标。
- index.html: 应用的HTML模板。
- favicon.ico: 网站图标。
- package.json: 项目的依赖和脚本配置。
- README.md: 项目说明文档。
- rollup.config.js: Rollup打包配置文件。
2. 项目的启动文件介绍
main.js
import App from './App.svelte';
const app = new App({
target: document.body,
props: {
name: 'world'
}
});
export default app;
main.js 是项目的启动文件,负责初始化并挂载 App.svelte
组件到 document.body
上。它传递了一个 name
属性给 App.svelte
组件。
3. 项目的配置文件介绍
package.json
{
"name": "svelte-use-form",
"version": "1.0.0",
"scripts": {
"build": "rollup -c",
"dev": "rollup -c -w",
"start": "sirv public"
},
"devDependencies": {
"@rollup/plugin-node-resolve": "^13.0.0",
"rollup": "^2.3.4",
"rollup-plugin-svelte": "^7.0.0",
"svelte": "^3.0.0"
},
"dependencies": {
"sirv-cli": "^1.0.0"
}
}
package.json 包含了项目的元数据、脚本命令和依赖项。
- scripts: 定义了构建、开发和启动服务的命令。
- build: 使用 Rollup 进行构建。
- dev: 使用 Rollup 进行开发构建,并监听文件变化。
- start: 启动开发服务器。
- devDependencies: 开发依赖项,包括 Rollup 和 Svelte 相关的插件。
- dependencies: 运行时依赖项,包括
sirv-cli
用于启动开发服务器。
rollup.config.js
import svelte from 'rollup-plugin-svelte';
import resolve from '@rollup/plugin-node-resolve';
import commonjs from '@rollup/plugin-commonjs';
import livereload from 'rollup-plugin-livereload';
import { terser } from 'rollup-plugin-terser';
const production = !process.env.ROLLUP_WATCH;
export default {
input: 'src/main.js',
output: {
sourcemap: