前言
typescript作爲未來前端開發的主流框架,在前端開發的過程中也會越來越主要,相信這篇文章會對你有很大的幫助!
開發環境搭建
創建ming-npm-package文件夾
我在桌面上創建了一個ming-npm-package的文件夾,然後在編輯器裏面打開
初始化項目
npm init
通過npm init 初始化項目來創建用戶package.json文件
也可以npm init -y 這個是使用的默認的配置,我個人使用的是npm init
設置配置項
package name: (ming-npm-package)
version: (1.0.0)
description: use ts
//這下邊的entry point: 這個是指定的最後使用的文件,而不是編譯文件
entry point: (index.js) ./dist/ming-npm-package.js
test command:
git repository:
keywords: typescript
author: xiaoming
license: (ISC) MIT
About to write to C:\Users\明\Desktop\ming-npm-package\package.json:
{
"name": "ming-npm-package",
"version": "1.0.0",
"description": "use ts",
"main": "./dist/ming-npm-package.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [
"typescript"
],
"author": "xiaoming",
"license": "MIT"
}
Is this OK? (yes)
這就是我設置的配置項,沒問題就可以輸入yes然後回車了
創建tsconfig.json文件
tsc --init
就會生成一個tsconfig.json文件
修改tsconfig.json默認文件
把這兩個註釋打開
"declaration": true, //打包之後是否生成聲明文件
"outDir": "./dist", //輸出文件
添加exclude,忽略dist文件
在打包的時候會排除這裏面指定的路徑文件
"exclude": [
"./dist"
]
安裝依賴
npm install typescript -D
開始編碼
創建ming-npm-package.ts文件
用來編寫功能
const arrayMap = (array: [], callback:(item: any,index: number, arr: any[]) => any): any => {
let i = -1
const len = array.length
let resArray = []
while (++i < len){
resArray.push(callback(array[i],i,array))
}
return resArray
}
export = arrayMap
對代碼進行編譯
tsc
此時我們的項目就會多了一個dist目錄
登錄npm
大家沒有npm賬號的可以註冊一個
這個是網址
https://www.npmjs.com
然後在編輯器終端裏面輸入
npm login
接着就會出來用戶名、密碼、郵箱這些依次填一下
創建.npmignore文件
在項目根目錄裏創建一個.npmjgnore
這個其實和.gitignor差不多,就是你發npm包的時候,希望哪些文件或者文件夾不發到這個npm上
這裏不用寫的node_modules,這是默認忽略的
版本號
在package.json裏面版本號,
每發佈一次都要修改一下
發佈
npm publish
發佈成功
安裝使用
我們把package.json文件裏面的name改成:
ming-npm
目的是 我們要安裝的包不能和package.json裏面的包名字是一樣的
然後再安裝一下我們這個包:
npm install [email protected]
跟其他的包一樣 npm install 包名
安裝成功:
再次發佈
如果需要再次發佈一定要改個版本號,改成之前的名字
然後再tsc對代碼進行編譯
npm publish 進行發佈
源碼
這個是我的代碼
https://github.com/shifengming/ming-npm-package
最後
如果本文對你有幫助得話,給本文點個贊❤️❤️❤️
歡迎大家加入,一起學習前端,共同進步!