准备工作:
<类库所在目录> - 可以是任意目录 为了打包方便,这个目录中需要有如下两个文件: -- package.json - 此文件是给后续发布命令以及使用这个类库依赖参考用的 -- tsconfig.json - 此文件为Typescript编译命令tsc的配置文件,此配置文件中定义了编译后文件输出位置,即dist目录
| 实际文件目录结构示意如下
| +-- tsconfig.json |
编译:
tsc -d -p <类库文件所在目录> - 此命令根据<类库文件所在目录>中的tsconfig.json文件的内容进行编译,并且 -d 选项将会生存 .d.ts文件
| tsconfig.json示例:
{ "extends": "../tsconfig.json", "compilerOptions": { "outDir": "../dist", "baseUrl": "./", "module": "es2015", "types": [] }, "exclude": [ "test.ts", "**/*.spec.ts" , "node_modules" ] } |
打包并发布: 打包的第一步需要将<类库文件所在目录>中的package.json拷贝到dist目录中,因为tsc编译器不会自动拷贝这个文件到dist目录;拷贝完这个文件,也可以将其它文件,比如README.md和Licence等文件一同拷贝到dist目录。
npm public dist
| package.json示例:
{ "name": "dy-form-fields", "version": "0.0.4", "license": "MIT", "publishConfig": { "registry": "http://d.dy.cn:8880/repository/npm-local/" }, "dependencies": { "moment": "*", "ngx-bootstrap": "*" ,"bootstrap": "*" }, "peerDependencies": { "rxjs": "*", "@angular/common": "*", "@angular/compiler": "*", "@angular/core": "*", "@angular/forms": "*" } } |
这样共享类库就打包完成了,后面就可以使用npm install命令来使用它。 |
|
|
|
|
|