# npm_vue_tem **Repository Path**: js-template/npm_vue_tem ## Basic Information - **Project Name**: npm_vue_tem - **Description**: 基于vuecli3扩展的封装npm模板。默认是个todolist组件示例。封装组件照着todolist相关更改 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 7 - **Forks**: 1 - **Created**: 2020-03-08 - **Last Updated**: 2022-06-21 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 基于vue发布npm包的项目模板架构说明文件 ## 目录说明 ``` examples // 本地开发查看包效果的演示目录 lib // 此npm包打包后 packages // npm包开发目录 todoList // todoList包 src // 主要功能实现的.vue文件 index.js // 对外提供对该npm包文件的引用 public // 静态资源目录 tests // 单元测试 .eslintrc.js // eslint配置 .gitignore // git忽略文件 .npmignore // npm发包的忽略文件 项目模板架构说明文件.md // 该项目架构相关说明 babel.config.js // babel配置文件 jesit.config.js // 单元测试框架jest配置文件 package.json README.md // 此npm包使用说明 ``` --- ## 如何开发一个npm包 ### 新建相关目录和文件 在packages目录下新建你准备开发包的名称代号(如demo1),参考todoList相关新建对应文件,做对应修改 ### 修改package.json里的相关信息 默认是wd-todolist-vue包相关的,可根据实际修改(遵守相关命名规则:公司组织代号-包名简称-框架) 参考:https://docs.npmjs.com/creating-a-package-json-file ### 本地跑起服务,查看该包效果 npm run dev ### 增加演示代码,辅助本地开发 在examples/App.vue里引入该组件(参考todolist组件) ### 增加单元测试 项目默认使用的jest单元测试框架。在tests/unit目录下新建相关单元测试文件,并编写测试用例 ### 编写该npm包使用说明 在README.md里编写该npm包使用说明 ### 删除示例,避免打不必要的包 删除示例的packages/todoList以及App.vue里的相关引入 ### 提交代码 #### 代码通过gitlab管理 - 登录gitlab,访问http://192.168.0.223:9090/architecture/front-end/npm (无权限,联系leonard) - 新建相关git仓库(名称和该npm包名一致,遵守相关命名规则) - 提交并推送代码到此仓库 --- ### 发布npm包 npm publish ### 更新版本 先切换到master分支 每次修改完组件后,我们需要更新版本 #### 方式一 修改 package.json 的version版本 规则:对于"version":"x.y.z" 1.修复bug,小改动,增加z 2.增加了新特性,但仍能向后兼容,增加y 3.有很大的改动,无法向后兼容,增加x 然后重新npm publish发布包 #### 方式二 使用命令修改版本 使用命令:npm version 进行修改,update_type 有三个参数, 第一个是patch, 第二个是minor,第三个是 major, patch:这个是补丁的意思; minor:这个是小修小改; major:这个是大改动; 具体咋用: 比如我想来个1.0.1版本,注意,是最后一位修改了增1,那么命令:npm version patch 回车就可以了; 比如我想来个1.1.0版本,注意,是第二位修改了增1,那么命令: npm version minor 回车就可以了; 比如我想来个2.0.0版本,注意,是第一位修改了增1,那么命令: npm version major 回车就可以了; 然后 使用 npm publish 发布即可 --- ### 取消已发布的npm包 #### 终端cli命令取消 参考: https://docs.npmjs.com/unpublishing-packages-from-the-registry ##### 取消发布软件包的单个版本 要取消发布软件包的单个版本,请运行以下命令,用package-name软件包的名称和version版本号替换: npm unpublish package-name@version ##### 取消发布整个程序包 要取消发布整个程序包,请运行以下命令,用package-name您的程序包名称替换: npm unpublish package-name -f 如果为写入启用了双重身份验证,则需要在unpublish命令中添加一次性密码--otp=123456(其中123456是您的身份验证器应用程序中的代码)。 #### 私有npm仓库删除直接在服务器上删除 一般情况建议用终端单个删除。如果是想一次性删除多个的话,连接上你部署verdaccios的服务器,具体操作示例如下: cd /home/yg/.config/verdaccio ~/.config/verdaccio$ ls config.yaml htpasswd storage ~/.config/verdaccio$ cd storage ~/.config/verdaccio/storage$ ls ~/.config/verdaccio/storage$ rm -rf 包名