的常见方式有两种:一种是手动构建webpack库包并设置输出到library;另一种是输出基于vue-cli3的库资源包。我们使用第二种vue脚手架方式搭建库。添加了编译库命令//package.json"scripts":{//..."lib":"vue-cli-servicebuild--targetlib--nameStep--destdistpackages/index.js"}//packages/index.js默认打包StepimportStepfrom'../steps/src/step';Step.install=function(Vue){Vue.component(Step.name,Step);};exportdefaultStep;--name:库名。--target:构建目标,默认为应用模式。此修改为lib启用库模式。--dest:输出目录,默认dist。[entry]:最后一个参数为入口文件,默认为src/App.vue。更详细的配置见?vue脚手架官网。如果库依赖其他库,请在vue.config.js中配置externals//vue.config.jsmodule.exports={configureWebpack:{externals:{vue:'Vue','vue-router':'VueRouter',axios:'axios'}}}执行npmrunlib发现我们的库已经打包到根目录的dist文件夹中了。添加.npmignore文件(可选)与.gitignore具有相同的语法。需要提交什么文件看自己的实际情况#忽略目录examples/packages/public/#忽略指定文件vue.config.jsbabel.config.js*。map配置npm库信息,配置package.json文件发布库文件。{"name":"gis","version":"1.2.5","description":"Vue-basedlibrary","main":"dist/gis.umd.min.js","keyword":"vuegis","private":false,"files":["dist"],"license":"MIT"}name:包名,唯一。可以在npm官网搜索名字。如果存在,则需要更改名称。version:版本号,每次发布到npm需要修改版本号,不能与历史版本号相同。描述:描述。main:入口文件,这个字段需要指向我们最终编译好的包文件。keyword:关键词,用空格分隔到你希望用户最终搜索的词。author:作者files:要上传的文件private:是否私有,需要改成false才能发布到npmlicense:开源协议dependencies:依赖库注意每次发布新的库,需要版本号要更改,规则如下:"version":"1.2.5"主版本号为1,次版本号为2,修订号为5主版本号(Major):当你制作一个不兼容的API修改小版本号(Minor):做向下兼容功能时新增修订号(Patch):做向下兼容问题修改时,先登录npm设置npm镜像地址,用于登录npmconfigset注册http://168.20.20.57.4873然后在终端执行login命令输入用户名,密码,邮箱登录npmlogin然后发布库资源到npmnpmpublish。最后如果发布成功,可以到官网查看对应的包,下载npminstallpackage_name
