typescript - 使用 TypeScript 时最好的库开发过程是什么

标签 typescript

<分区>

我即将分享我正在编写的一个开源布局库,我决定使用 TypeScript! (这是最好的东西!)

我的图书馆使用 Easeljs 和 PIXI 图书馆,您可以在 definitelytyped 上找到它们。

我正在使用 TSD 获取最新的 *.d.ts 文件以获得最新的定义,所以我的“defs”文件夹看起来像这样(tweenjs 正在被 easeljs 使用):

enter image description here

tsd.d.ts 文件只是一个包含所有 defs 文件夹文件的定义文件,以便更好地组织。

问题始于开发阶段。 在 grunt 文件上,我有一个构建任务,它将在“build”文件夹中创建一个最终的 js 文件,其中包括我的库的定义文件,最终它会产生这样的结果: enter image description here

问题是在 simple-layout.js.d.ts 中只有一个对 tsd.d.ts 的引用,而不是对 easeljs.d.ts 和 pixi 的引用.d.ts

我不能在 definitelytyped 中共享这个 .d.ts 文件,因为它引用了 tsd.d.ts!

那么,使用 TypeScript 时最好的库开发过程是什么?

谢谢!!

最佳答案

对我来说一个好的工作流程是:

  1. 在 WebStorm 中为 TS 代码创建一个空项目。
  2. 为项目创建一个 Grunt 配置文件。
  3. 编写代码并仅使用 Grunt 进行编译 - 因此项目将独立于 IDE。
  4. 使用 QUnit(使用 DefinitelyTyped 声明)或使用 TSUnit 为项目编写测试并使用 GruntJS(例如,使用 PhantomJS 后端)运行它。

关于typescript - 使用 TypeScript 时最好的库开发过程是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24975699/

相关文章:

javascript - 如何让 React 项目中的 Emotion 风格的组件与 TypeScript 一起工作?

angular - 我如何从选择的组件中获取选定的值

javascript - 有没有办法在 typescript 类中生成 getter 和 setter 对?

Angular react 形式错误 : Must supply a value for form control with name:

javascript - 在 Angular 4 中触发输入上的(keyup.enter)时防止(ngSubmit)

angular - 更新 Angular 后,我们得到一个 "process is not defined"

typescript - 如何在 Aurelia Validation 中为给定的 customRule 创建自定义方法

javascript - 转换 document.getElementById 以访问 TypeScript 中的文件

angular - 错误 : SyntaxError: Unexpected strict mode reserved word(…).。

typescript npm 包 - 如何不必从 "dist/"导入