发布

    1. 与你的npm包捆绑在一起,或

    如果你能控制要使用你发布的声明文件的那个npm包的话,推荐第一种方式。 这样的话,你的声明文件与JavaScript总是在一起传递。

    如果你的包有一个主.js文件,你还是需要在package.json里指定主声明文件。 设置types属性指向捆绑在一起的声明文件。 比如:

    注意"typings""types"具有相同的意义,也可以使用它。

    所有的依赖是由npm管理的。 确保所依赖的声明包都在package.json"dependencies"里指明了 比如,假设我们写了一个包它依赖于Browserify和TypeScript。

    这里,我们的包依赖于browserifytypescript包。 browserify没有把它的声明文件捆绑在它的npm包里,所以我们需要依赖于得到它的声明文件。 typescript相反,它把声明文件放在了npm包里,因此我们不需要依赖额外的包。

    我们的包要从这两个包里暴露出声明文件,因此browserify-typescript-extension的用户也需要这些依赖。 正因此,我们使用"dependencies"而不是"devDependencies",否则用户将需要手动安装那些包。 如果我们只是在写一个命令行应用,并且我们的包不会被当做一个库使用的话,那么我就可以使用devDependencies

    危险信号

    /// <reference path="..." />

    _应该_使用/// <reference types="..." />代替

    务必阅读使用依赖一节了解详情。

    打包所依赖的声明

    如果你的类型声明依赖于另一个包:

    • _不要_把依赖的包放进你的包里,保持它们在各自的文件里。
    • _不要_将声明拷贝到你的包里。
    • _应该_依赖于npm类型声明包,如果依赖包没包含它自己的声明的话。

    发布到