開發(fā)屬于自己的包

1. 需要實現(xiàn)的功能

① 格式化日期

② 轉(zhuǎn)義 HTML 中的特殊字符

③ 還原 HTML 中的特殊字符

1.1.需要實現(xiàn)的功能

shi1.png

1.2. 需要實現(xiàn)的功能

teshu2.png

1.3. 需要實現(xiàn)的功能

shuchu3.png

2. 初始化包的基本結(jié)構(gòu)

① 新建 yiliang-tools 文件夾,作為包的根目錄

② 在 yiliang-tools 文件夾中,新建如下三個文件:

  • package.json (包管理配置文件)

  • index.js (包的入口文件)

  • README.md (包的說明文檔)

3. 初始化 package.json

chushihua4.png

4. 在 index.js 中定義格式化時間的方法

// 定義格式化時間的函數(shù)
function dateFormat(dateStr) {
  const dt = new Date(dateStr)

  const y = dt.getFullYear()
  const m = padZero(dt.getMonth() + 1)
  const d = padZero(dt.getDate())

  const hh = padZero(dt.getHours())
  const mm = padZero(dt.getMinutes())
  const ss = padZero(dt.getSeconds())

  return `${y}-${m}-$u0z1t8os ${hh}:${mm}:${ss}`
}

// 定義一個補零的函數(shù)
function padZero(n) {
  return n > 9 ? n : '0' + n
}

module.exports = {
  dateFormat
}

5. 在 index.js 中定義轉(zhuǎn)義 HTML 的方法

// 定義轉(zhuǎn)義 HTML 字符的函數(shù)
function htmlEscape(htmlstr) {
  return htmlstr.replace(/<|>|"|&/g, match => {
    switch (match) {
      case '<':
        return '&lt;'
      case '>':
        return '&gt;'
      case '"':
        return '&quot;'
      case '&':
        return '&amp;'
    }
  })
}

6. 在 index.js 中定義還原 HTML 的方法

// 定義還原 HTML 字符串的函數(shù)
function htmlUnEscape(str) {
  return str.replace(/&lt;|&gt;|&quot;|&amp;/g, match => {
    switch (match) {
      case '&lt;':
        return '<'
      case '&gt;':
        return '>'
      case '&quot;':
        return '"'
      case '&amp;':
        return '&'
    }
  })
}

7. 將不同的功能進(jìn)行模塊化拆分

① 將格式化時間的功能,拆分到 src -> dateFormat.js 中

② 將處理 HTML 字符串的功能,拆分到 src -> htmlEscape.js 中

③ 在 index.js 中,導(dǎo)入兩個模塊,得到需要向外共享的方法

④ 在 index.js 中,使用 module.exports 把對應(yīng)的方法共享出去

8. 編寫包的說明文檔

包根目錄中的 README.md 文件,是包的使用說明文檔。通過它,我們可以事先把包的使用說明,以 markdown 的

格式寫出來,方便用戶參考。

README 文件中具體寫什么內(nèi)容,沒有強制性的要求;只要能夠清晰地把包的作用、用法、注意事項等描述清楚即可。

我們所創(chuàng)建的這個包的 README.md 文檔中,會包含以下 6 項內(nèi)容:

安裝方式、導(dǎo)入方式、格式化時間、轉(zhuǎn)義 HTML 中的特殊字符、還原 HTML 中的特殊字符、開源協(xié)議

發(fā)布包

1. 注冊 npm 賬號

① 訪問 https://www.npmjs.com/ 網(wǎng)站,點擊 sign up 按鈕,進(jìn)入注冊用戶界面

② 填寫賬號相關(guān)的信息:Full Name、Public Email、Username、Password

③ 點擊 Create an Account 按鈕,注冊賬號

④ 登錄郵箱,點擊驗證鏈接,進(jìn)行賬號的驗證

2. 登錄 npm 賬號

npm 賬號注冊完成后,可以在終端中執(zhí)行 npm login 命令,依次輸入用戶名、密碼、郵箱后,即可登錄成功。

命令1.png

3. 把包發(fā)布到 npm 上

將終端切換到包的根目錄之后,運行 npm publish 命令,即可將包發(fā)布到 npm 上(注意:包名不能雷同),文件前面顯示一個 + 代表上傳完成

22.png

4. 刪除已發(fā)布的包

運行 npm unpublish 包名 --force 命令,即可從 npm 刪除已發(fā)布的包。

3333333333.png

注意:

① npm unpublish 命令只能刪除 72 小時以內(nèi)發(fā)布的包

② npm unpublish 刪除的包,在 24 小時內(nèi)不允許重復(fù)發(fā)布

③ 發(fā)布包的時候要慎重,盡量不要往 npm 上發(fā)布沒有意義的包!

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容