文章读译自30秒指南出版打印稿包npm,部分内容有修改哈。
这篇文章要求你有一定的JS, TS和NPM的知识,如果你写过普通的NPM包就更好啦~如果没有的话网上也很多教程的,都很简单~
发布过npm包的同学都知道,初始化一个npm项目,直接用npm init - y就可以了,那如果要用ts呢,直接tsc——init即可。这两个操作会生成包。json和tsconfig。json文件。然后我们按以下步骤修改一下配置:
<强> 1。添加“宣言”:真正的到你的tsconfig。json 强>
这行语句告诉TypsScript在编译的时候为你自动生成d。ts文件。需要注意的是,当你使用私有的类型时,但是这个类型也外部API的一部分,这个包的使用者就得不到该类型的类型推断,ts编译器也会报警告,这时你只需要在该类型前添加出口即可。
<强> 2。添加“类型”:“index.d。ts”到你的包。json 强>
当其他人导入你的包的时候,这句话就告诉了TS编译器到哪里去寻找类型定义文件。这里的.d。ts文件和主要入口指向的是一个文件夹,所以通常情况下,你的包。json会包含下面两行:
“主要”:“dist/index.js”, “类型”:“dist/index.d.ts” >之前(上面默认你在tsconfig。json中配置的outDir指向的是dist目录)
<强> 3。保证你的dist目录被添加到了.gitignore 强>
在我们的代码仓库,一般不需要包含编译后的代码,只需要包含源码即可,所以我们不对dist目录做版本管理。并且这也不影响我们发布dist目录到npm。
<强> 4。运行构建命令强>
运行tsc即可编译所有的源码。这非常方便,通常情况下,我们可以添加一条命令到package.json:
“构建”:“tsc”<强> 5。运行npm发布强>
接下来就是要发布到npm了,在包中。json添加以下命令:
“释放”:“tsc,,npm发布"笔者习惯使用标准版配合commitizen来发布npm包,感兴趣的同学可以自行了解一下~
如果想要在发布前调试本地包,可以使用npm链接命令,在此项目根目录执行npm链接,然后在要调试的演示项目中执行npm链接& lt;你的包name>,然后在代码中直接引入使用即可。
下面是完成配置后的package.json:
{ “名称”:“my-ts-lib”, “版本”:“1.0.0”, “描述”:“我npm写在TS包”, “主要”:“dist/index.js”, “类型”:“dist/index.d.ts”, "脚本":{ “构建”:“tsc”, “释放”:“tsc,,npm发布” }, “作者”:“savokiss”, “许可证”:“麻省理工学院”, " devDependencies ": { :“打印稿^ 3.5.3” } } >之前下面是最终的tsconfig.json:
{ " compilerOptions ": { “目标”:“es5”, “模块”:“commonjs”, “自由”:[" es2017”、“es7”、“es6”,“dom”), “宣言”:没错, “outDir”:“距离”, “严格”:没错, “esModuleInterop”:真的 }, “排除”:[" node_modules”、“dist ") } >之前以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
教你30秒发布一个打印稿包到NPM的方法步骤