声明文件应随源码发布还是提交到 DefinitelyTyped,如何制定版本策略
简答题中等908 次浏览
参考答案与解析
# 核心结论
声明文件应放在源码包内还是提交到 DefinitelyTyped,主要取决于谁控制源码发布、谁承担维护责任,以及类型声明能否与运行时版本同步。能够修改并发布原库时,通常应把声明作为第一方公共产物随包发布,使运行时代码与类型契约共享版本号、测试流程和发布周期。只有无法在上游库中维护类型,或上游明确不接受声明时,才更适合通过 DefinitelyTyped 提供独立的第三方声明包。
# 底层机制
声明文件虽然不直接生成运行时代码,但它决定消费者可以怎样调用库,因此属于公共接口的一部分。删除导出、收窄参数类型、改变返回类型、调整泛型约束或默认类型参数,都可能让已有调用无法通过检查。即使运行时实现仍向后兼容,
