vue插件发布到npm上

在项目的根目录创建plugins文件夹,里面放各种组件和入口文件index.js;
在Vue组件中一定要提供name属性;
在这里插入图片描述

在index.js 中

/* eslint-disable */
/**
 * 动态引入文件
 * 参数1:引入文件的路径
 * 参数2:是否查找子文件
 * 参数3:匹配以.vue结尾的文件
 */
const requireComponent = require.context('./',true,/\.vue$/);

const install = function(Vue){
    if (install.installed ) return
    install.installed
    //requireComponent.keys() 所有符合条件的文件路径组成的数组
    requireComponent.keys().forEach(path => {
        //循环引入然后注册组件
        const config = requireComponent(path)
        Vue.component(config.default.name ,config.default);
    });

}


//确保是正常环境
if(typeof window !== undefined && window.Vue){
    install(window.Vue)
}
//导出的对像一定有个install 方法
export default {
    install
}

在main.js中

import plugins from './plugins/index.js'
Vue.use(plugins)

在组件中使用
直接使用组件的名称name使用即可

<czf-btn></czf-btn>

将插件发布到npm上
在package.json中

"name": "vue-npm-package-guobiinfen",
  "version": "0.1.1",
  "private": false,
  "description": "我的第一个插件",
  "license": "MIT",
  "main": "lib/vue-npm-package-guobinfen.umd.min.js",
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint",
    "lib":"vue-cli-service build --target lib --name vue-npm-package-guobinfen --dest lib src/plugins/index.js"
  },

scripts lib需要自己配

在终端中输入

npm login

提示输入 Username Password Emai 等(你的npm账号)

npm publish 

发布插件

然后别人就可以下载你的插件和使用你的插件了

在这里插入代码片
npm i vue-npm-package-guobiinfen

在main.js 中

import aaa from "vue-npm-package-guobiinfen";
Vue.use(aaa);

然后在页面中就可以使用了;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值