# library-vite-template **Repository Path**: guobinyong/library-vite-template ## Basic Information - **Project Name**: library-vite-template - **Description**: 构建库的vite模板 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 5 - **Forks**: 2 - **Created**: 2022-05-24 - **Last Updated**: 2025-09-03 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README [git仓库]: https://github.com/GuoBinyong/library-vite-template [issues]: https://github.com/GuoBinyong/library-vite-template/issues [码云仓库]: https://gitee.com/guobinyong/library-vite-template [library-webpack-template]: https://github.com/GuoBinyong/library-webpack-template [library-rollup-template]: https://github.com/GuoBinyong/library-rollup-template [Git并行工作流程规范]: https://www.jianshu.com/p/d7a3a4935440 > 构建过程是复杂的前端项目必不可少的环节;但 业务代码 与 公用代码(如:封装的库、组件、工具等被复用的代码)的构建需求是不一样的;我发现很多 npm 贡献者都没意识到这一点,他们用传统的业务项目的 webpack 配置 去打包 公用代码,虽然能运行,但实际潜藏着许多问题,甚至都不经过编译构建,直接发布单纯的源码到 npm 上;由于本人经常封装一些东西,为了方便,就分别使用 rollup、vite 和 webpack 开发并配置了专门用于构建公共代码的配置模板;本仓库是 vite 版本的配置模板;这是 [rollup版本][library-rollup-template] 和 [webpack版本][library-webpack-template] 的配置模板请看 **目录** - [1. 简介](#1-简介) - [2. 分支介绍](#2-分支介绍) - [3. 使用](#3-使用) - [4. 命令](#4-命令) - [5. 所有可能需要的更改](#5-所有可能需要的更改) - [5.1. 更改库的相关信息](#51-更改库的相关信息) - [5.2. 禁止输出某种模块的包](#52-禁止输出某种模块的包) - [6. 业务代码与公用代码的构建特点](#6-业务代码与公用代码的构建特点) - [6.1. 业务代码](#61-业务代码) - [6.2. 公用代码](#62-公用代码) - [7. 构建工具的选择](#7-构建工具的选择) - [8. 公共代码构建的配置目标](#8-公共代码构建的配置目标) - [9. 组织结构](#9-组织结构) - [10. npm包管理配置文件](#10-npm包管理配置文件) - [11. Rollup配置文件](#11-rollup配置文件) - [12. TypeScript配置文件](#12-typescript配置文件) - [13. 代码检查](#13-代码检查) - [14. 项目文档Readme](#14-项目文档readme) --------- **注意:** 为了方便下文描述,我把 **业务代码** 构建出的最终产品称为 **应用程序**;把 **公用代码** 构建的出产品称为 **组件**; # 1. 简介 library-vite-template 称为 库构建模板,又称 公共代码构建模板 ,是专门用于构建 公共代码(如:封装的库、工具等) 的 vite 配置模板;针对不同的开发环境(如:TypeScript、JavaScript 等等)library-vite-template 仓库以分支的方式提供了多种配置模板,当需要开发和构建公共代码时,直接下载相应分支,并默认在的 src 目录下开发即可。 **具有以下特性:** - 易使用:一般情况下,只需简单简单更改下 `package.json` 文件的相关信息即可; - 可配置去除 公共代码 的依赖,除了 `iife` 格式的包,默认情况下都去除了 所有 `node_modules` 中的依赖; - 多个构建目标可同时构建,即:一次构建分别生成多个构建目标的构建包,如:`ESModule`、`CommonJS`、`AMD`、`UMD`、`自执行文件`(可用 `