• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

发布公共的 vue 组件到 npm

武飞扬头像
十月ooOO
帮助1

如何发布一个公共的 vue 组件到 npm

参考文章:https://www.freecodecamp.org/news/how-to-create-and-publish-a-vue-component-library/

介绍一下如何将一个写好的组件发布到公共的 npm 上,可以让其像其它插件一样下载使用。

学新通

一、全局安装工具 vue-sfc-rollup

npm i -g vue-sfc-rollup

发布一个 vue 组件,需要配置不少东西,并要符合发布 vue 组件的内容格式,这个过程可以通过 vue-sfc-rollup 这个工具来实现,它简化了需要发布 vue 组件的过程,好让你只需要关注组件的实现。

二、使用 vue-sfc-rollup 初始化项目

在你需要创建这个 vue 组件的文件夹中执行初始化操作,然后就会进入初始化进程,这个过程跟新建一个 vue 项目差不多。

sfc-init
1. 这个组件用于哪个版本 v2 还是 v3

学新通

2. 是一个组件库还是只是一个单独的组件

学新通

3. 输入这个项目名

学新通

4. 这个组件名是

定义组件名,默认跟项目名一致,也可以自己定义名字
学新通

5. 这个组件使用 js 还是 ts 编写

学新通

6. 输入盛放组件文件的目录位置,默认在项目根目录

如果是单组件项目,放在根目录也无妨
学新通

7. 自此,这个组件项目就初始化完成了

学新通
项目目录如下:

学新通

三、实现组件的功能

不要被上面的目录结构吓到,你不需要理解每个目录的作用,把这个当成一个普通的 vue 项目就可以,在你定义的组件文件中实现你的代码逻辑。

你可以根据自己需要添加 scss 支持什么的。
比如我的 kyle-password-pad 组件中就用到了 scss ,所以我安装了 scss 支持,并添加了自己常用的一些通用方法库和 scss 变量库。再提示一遍,这项目就只是一个普通的 vue 项目,放心大胆的写就可以了。

1. 安装项目依赖

先安装依赖,用 npm 或 yarn 都可以,我喜欢用 yarn

npm i
# 或
yarn 

2. 运行查看初始状态

安装依赖之后,可以直接运行 npm serve 来运行这个项目,就可以看到项目初始状态了

npm run serve 

就能看到初始的项目状态了,它给放了一个简单的小例子,如下:
学新通

3. 好了,现在可以修改你的 vue 文件,实现自己的功能了

我放了一个数字输入的 pad,并添加了 scss 支持,全代码可以看 github 项目例子,就不放源码了,占篇幅。

github kyle-password-pad: https://github.com/KyleBing/kyle-password-pad

我的例子是这样的

学新通

四、发布之前完善一下你的组件包信息

在生成最终的发布文件之前,最好完善一下你这个组件的信息,打开 package.json 文件,完善一下上面的说明文件内容,版本号最好以 0.0.1 开始,比如我的是:
学新通

五、生成发布用的代码

vue 组件的发布包中需要包含这三种文件
学新通
幸运的是,有了 vue-sfc-rollup 这个工具之后,你只需要执行一下 build 指令即可自动生成。
在你 serve 测试完成你的组件功能之后,就可以执行下面指令来生成最终发现需要的文件了。

npm run build 

六、发布你的 vue 组件包

1. 注册 npm 账号

发布组件包,需要你登录 npm,如果没有 npm 账号,去官网注册一下: https://www.npmjs.com/

2. 命令行登录 npm

注册完成之后,回到命令行,执行以下指令登录到 npm

如果登录失败,可能是因为你目前使用的不是官方的 npm 源地址,国内很多开发者都因为网速慢,而切换到了 腾讯或淘宝的 npm 源。但这些源是不认 npm 的官方账号的。
具体解决方法详见: NPM login 的时候出错,无法登录,解决

npm login

学新通

3. 发布组件

登录完成之后,切换到你的组件项目目录,就可以发布组件了

npm publish

学新通
这就发布完成了,这个名为 kyle-password-pad 的包,已经可以被全世界的 vue 开发者使用了。

此时在 npm 网站中就能搜到这个组件了

学新通

七、将刚才发布的组件添加到自己的 vue 项目中看看

发布之后,最好完善一下你这个组件的 github 地址信息什么的,每个 npm 包都对应着一个 github 项目地址,这个方便其它开发者查阅。

学新通

既然组件已经发布了,就可以像使用其它 vue 组件那样引入到自己项目中进行使用了。

1. 安装这个组件

npm i kyle-password-pad

package.json 里就能看到这个包的身影了
学新通

2. 在页面中使用它

引入它,使用它

学新通
再看页面中的样子,能正常使用和显示!

学新通

八、OK,你已经学会发布自己的组件了

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhihbfef
系列文章
更多 icon
同类精品
更多 icon
继续加载