1.初始化项目

vue init webpack-simple XXXXX(此处为插件名)

使用vue创建一个简单的项目,删除src中除了main.js和app.vue外的文件,清空app.vue中无用内容

插件编写完成 可以本地app.vue先运行一下 是否效果正常 再调整

2.更改配置文件

在index.js内

import headerNavbar from './webappHeader'
const headNavbar = {
install(Vue, options) {
Vue.component(headerNavbar.name, headerNavbar)
}
}
if (typeof window !== 'undefined' && window.Vue) {
window.headNavbar = headNavbar
Vue.use(headNavbar)
}
export default headNavbar

 

package.json

version后添加版本号,可自定

private值设为false(必须)

在repository内的url字段 填上该项目的github地址,可以把项目传到自己的GitHub上

修改箭头中所指

1. 你的插件版本号,以后每次上传npm都需要更改

2. 不设为false无法发布

3. 填写你自己的github托管地址

webpack.config.js

修改entry和filename

index.html

3.发布npm

你需要去npm官网注册一个npm帐号

注册好后

进入到项目目录下npm login

输入你的用户名,密码,邮箱

成功登录后我们在输入npm publish

ok,我们就发布成功!

4.引用

在你的项目中 npm install head_navbar --save

main.js

import headerPlugin from 'head_navbar'
Vue.use(headerPlugin)

5、遇到问题

  1. you must verify your email before publishing a new package: https://www.npmjs.com/email-edit : hjm-console

    您没有验证您的电子邮件地址。在注册的时候给你发的邮件要验证

  2. 发布失败,报错404,是淘宝镜像的原因,淘宝仓库改为原仓库
    npm config set registry https://registry.npmjs.org/
  3. You cannot publish over the previously published version 1.0.1. : hjm-console

    你不能发布当前版本1.0.1(每次发布新版本的时候请修改package中的版本号 --> 版本号不能重复),可以手动修改也可以通过命令行修改

  4. 报错:"hjm-vFilters" is invalid for new packages : hjm-vFilters

    包名中不再允许使用大写字符。将包名改为hjm-vue-filters

  5. 插件安装成功,引用不存在,看package.json里面的
    "main": "dist/head_navbar.js",是否正确,修改正确后重新发布
  6. 插件中使用了图片,图片路径不对
    将webpack.config.js里面的file-loader改为url-loader

6、删除包 

npm unpublish XXXXX(此处为插件名) --force 
// 注意:删除包后需要在24小时之后才能重新上传包名相同的包 // 半小时内你可以删除自己发布的库,之后你就再也不能删除了。
// 原因:删库事件导致很多依赖它的著名的npm包构建失败,甚至影响到了不少公司的生产环境。从那时候开始npm就更改了unpublish的策略。

  

npm上发布vue插件的更多相关文章

  1. 发布vue插件到npm上

    总体分为2个步骤 一,先写好插件 二,发布到npm上面 一,写vue插件 vue有一个开放的方法install,在vue插件需要写在这个方法里面,在vue官网,里面说的很清楚,这个方法里面可以是全局方 ...

  2. npm发布包以及更新包还有需要注意的几点问题(这里以发布vue插件为例)

    前言 在此之前,你需要去npm官网注册一个属于自己的账号,记住自己的账户名以及密码.邮箱,后面会用的到.第一步,安装webpack简易框架 vue init webpack-simple marque ...

  3. 在npm上发布一个自己的包

    1.首先你要在npm上创建一个账号,这里需要输入邮箱的,注意激活邮箱否则无法publish自己的包 2.在本地创建一个文件夹,输入npm init初始化项目,这里是我使用npm init创建的pack ...

  4. 在npm上发布自己的vue组件库(使用npm install 或者 CDN的方式引用)

    一.npm publish发布包到npm库的命令是npm publish npm publish发布包,需要先配置webpack.json文件,如果没有webpack.json文件,可以通过npm i ...

  5. Fundebug发布Vue插件,简化BUG监控接入代码

    摘要: 代码越短越好! 我们发布了fundebug-vue插件,可以简化Vue框架接入Fundebug的代码. Vue如何接入Fundebug 1. 安装fundebug-javascript与fun ...

  6. nodejs学习笔记四(模块化、在npm上发布自己的模块)

    模块化:      1.系统模块:  http.querystring.url      2.自定义模块      3.包管理器   [系统模块]   Assert      断言:肯定确定会出现的情 ...

  7. 如何使用@vue/cli 3.0在npm上创建,发布和使用你自己的Vue.js组件库

    译者按: 你可能npm人家的包过成千上万次,但你是否有创建,发布和使用过自己的npm包? 原文: How to create, publish and use your own VueJS Compo ...

  8. 手把手教你写vue插件并发布(二)

    前记:上一篇 https://www.cnblogs.com/adouwt/p/9211003.html, 说到了一个完整的vue插件开发.发布的流程,总结下来就讲了这么一个事,如何注入vue, 如果 ...

  9. npm上发布包和删除已发布的npm包(https://www.npmjs.com/)

    1.npm上发布自己写的包 2.删除已经发布的包 npm unpublish --force //强制删除,这个是撤销24小时发布的包,有些包发布久了,这个方法不会再管用了. npx force-un ...

随机推荐

  1. spark基础概念(一):幂等性。

    1) 出处:幂等性源自数学概念,表示f(x) = f(f(x)); 含义:多次执行一个函数得到的值和执行一次得到的值相同. 如:f(x) = pow(x, 1);  f(x) = abs(x); 2) ...

  2. Linux C\C++基础——数组形参的使用

    1.数组形参 ]) void fun(int a[]) void fun(int *a) ],int n) void fun(char*p[],int n) void fun(char**p,int ...

  3. 【Spring 源码】Spring 加载资源并装配对象的过程(XmlBeanDefinitionReader)

    Spring 加载资源并装配对象过程 在Spring中对XML配置文件的解析从3.1版本开始不再推荐使用XmlBeanFactory而是使用XmlBeanDefinitionReader. Class ...

  4. 使用 docsify 創建自己的 markdown 文檔系統

    先來看一下我在碼雲上創建的demo: http://lin1270.gitee.io/nicedoc/#/ GIT自己clone一下: https://gitee.com/lin1270/nicedo ...

  5. 使用CompletableFuture进行异步任务编排

    1.JDK5引入了Future进行异步任务的处理,Future 的接口主要方法有以下几个: (1)boolean cancel (boolean mayInterruptIfRunning) 取消任务 ...

  6. sql server不同排序规则的数据库间字段的比较

    不同的排序规则的字段是不能直接比较的.会提示:无法解决 equal to 操作的排序规则冲突.可以把字段强制转换一个排序规则,这样就能比较了.示例: ------------------------- ...

  7. Spring(十三)-- Spring 事务

    Spring 事务 1. 回忆之前事务知识点  一:事务的概念 将一系列的数据操作捆绑在一起,成为一个整体进行统一管理! 一条或者多条sql语句的集合!  二:事务的ACID特性 原子性(Atomic ...

  8. Windows系统下同时安装Python2和Python3

    Windows系统下同时安装Python2和Python3 说明 有时由于工作需求我们需要在Python2版本下面进行一些开发,有时又需要Python3以上的版本,那么我们怎么在一台电脑上同时安装多个 ...

  9. 前端-CSS-初探-注释-语法结构-引入方式-选择器-选择器优先级-01(待完善)

    目录 CSS(Cascading Style Sheet) CSS注释 CSS语法结构 CSS的三种引入方式 选择器 伪类.伪元素选择器速查 CSS选择器优先级***** 选择器相同的情况下 选择器不 ...

  10. Peter and Snow Blower CodeForces - 613A (点到线段距离)

    大意: 给定多边形, 给定点$P$, 求一个以$P$为圆心的最小的圆环包含整个多边形. #include <iostream> #include <cmath> #define ...