記錄一個 npm 包的開發 -- smms

其實主要想寫一個圖牀網站的上傳方法,順便記錄一次 npm 包的開發。javascript

第一步、 初始化一個 npm 包

mkdir upload-img && cd upload-img
npm init

而後按提示輸入 package nameversiondescription 等信息就能夠了。
初始化完會在當前目錄生成一個 package.json 文件,熟悉 現代PHP 的應該都知道,這個文件跟 composer.json 的做用是同樣的,都用於描述這個項目的各項信息,包括依賴和腳本等。java

第二步、開始編碼

新建 index.js 文件,開始編碼。node

默認的入口文件是 index.js ,固然你能夠在 package.json 隨意更改入口文件。ios

/*!
 Copyright (c) 2017 96qbhy.
 Licensed under the MIT License (MIT)
 */
/* global define */

(function () {
    'use strict';

    var axios = window.axios || require('axios');

    function uploadImg(file) {
        var data = new FormData();
        data.append('smfile', file);
        data.append('ssl', true);
        return axios.post('https://sm.ms/api/upload', data).then(data => data.data);
    }

    if (typeof module !== 'undefined' && module.exports) {
        module.exports = uploadImg;
    } else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {
        // register as 'uploadImg', consistent with npm package name
        define('uploadImg', [], function () {
            return uploadImg;
        });
    } else {
        window.uploadImg = uploadImg;
    }
}());

而後基本套路走一發, 代碼就那麼多。git

實際代碼已更新,最新的代碼請移步該項目的 github倉庫
做爲一個開源項目,一個好的 readme.md 必不可少,此處我省略了 readme.md 的書寫,由於太多了。github

第三步、發佈

  1. 註冊 npmjs 賬號,已註冊的請忽略。
  2. 執行 npm adduser ,按提示輸入 username 和 password 以及 email。
  3. 執行 npm publish

OK,裝逼完畢,這樣就完成了一個簡單的 npm 包的開發和發佈。npm

第四步、添加到 github 倉庫

  1. github 建立倉庫。
  2. 執行 git init,添加 .gititnore 文件,排除須要排除的文件,例如 node_modules.idea 等。
  3. 添加遠端倉庫 , git remote add origin {倉庫地址}
  4. add + commit + push

該項目我託管在 github , 地址是 https://github.com/96qbhy/smms
sm.ms 是一款免費的圖牀網站,smmssm.ms 的 js 上傳插件 。json

相關文章
相關標籤/搜索