iT邦幫忙

2022 iThome 鐵人賽

DAY 29
1

除了測試之外,那當然就是發佈啦!

呼喚我最一開始的需求,就是希望能夠建立自己的 library 然後來使用,本篇計畫用 npm 來發佈。

同一隊的丹尼有寫了 Have fun! 新手也能打造的Javascript微型專案! Day22: 總是用別人寫的套件? 這次我們自己來寫一個npm package吧! 也可以前去參考,其實我也是參考他的 XD

開始!

首先,先建立一個乾淨的資料夾並建立我們的 package.json:

npm init -y
{
  "name": "@build-own-hooks/use-toggle",
  "version": "1.1.0",
  "description": "A hook to toggle state between true and false",
  "keywords": [
    "react",
    "react-hook",
    "hook",
    "toggle",
    "state"
  ],
  "author": "wlcharlie",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "repository": {
    "type": "git",
    "url": "git+https://github.com/wlcharlie/react-use-toggle.git"
  },
  "homepage": "https://github.com/wlcharlie/react-use-toggle#readme",
  "license": "ISC",
}

name 如果有 scoped 的話(也就是@後面/之前),可以放自己的使用者帳號,避免與其他套件同名,或者是透過 npm 建立一個 organization 來管理,若使用 private package 就要付費。

程式們

其實就跟一般的資料結構一樣,預計引入方式是這樣的話:

import useToggle from "@build-own-hooks/use-toggle"

那麼進入點就會是在 index.js (與package.json),結構如下:

發佈

npm publish --access=public

使用

把昨天的測試專案打開來並輸入

npm i @build-own-hooks/use-toggle

修改一下引入:

// import useToggle from "./hooks/useToggle"

import useToggle from "@build-own-hooks/use-toggle"

這樣就沒問題了!之後就可以慢慢把其他可使用的 hook 慢慢一起整合!

結語

由於時間緊迫,可惜沒能同一篇研究 dependencies and bundle >_<


上一篇
[DAY 28] 自己的Hook自己測試!
下一篇
[DAY 30]自己的鐵人終於寫完了,剩下打包那件事
系列文
React Hook 不求人,建立自己的 Hook Libary30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言