发布自己的npm包,hexo文章排序插件

问题场景

搭建博客时文章的排序问题,想要按照更新时间排序,另外支持置顶,默认的排序插件和npm搜索到的很多插件都不能同时支持这两种排序方式。
后来查看了hexo-generator-index-pin-top插件的源码,修改了排序字段后本地测试成功。那么每次在本地安装完插件都要先修改源码了,
这对于我来说就很可怕了,正好了解到npm可以发布自己的包,按部就班做完,效果非常棒!

简介

项目地址: Github
插件地址: hexo-generator-index-updated

步骤

  • 初始化npm项目
    1
    npm init
    填写完一大堆东西后会生成一个package.json,然后就可以编写代码了
    这里我是修改别人的插件,所以直接fork了那个插件的Github工程,然后修改package.json
  • 登陆npm帐号
    1
    2
    3
    npm login
    # 验证登陆
    npm who am i
    当然,首先要去npm官网注册一个帐号
  • 发布
    1
    npm publish .
    完成后显示一行包名和版本号就是成功了,npm会发一封邮件给你
    更新时修改版本号再发布一边就行了

遇到问题

  • 无法登陆

    因为之前使用了npm淘宝镜像,这时候要改回原来的源

    1
    2
    3
    4
    # 使用淘宝镜像
    npm config set registry https://registry.npm.taobao.org
    # 改回原来的源
    npm config set registry http://registry.npmjs.org
  • 发布命令显示成功,但是没有收到邮件,登陆官网查看也没有包

    这个问题比较诡异,因为是国外网站,所以当时我是开了VPN发布的,显示成功但是实际没有上传到官网。
    后来过了几天在没开VPN状态下发布成功了,可能与网络环境和代理有关,所以发布还是不要连VPN了!

文章目录
  1. 1. 问题场景
    1. 1.1. 简介
    2. 1.2. 步骤
    3. 1.3. 遇到问题