1

我正在通过一个工作示例开始使用 FunScript。使用 Nuget 添加需要的库,效果很好。

在 channel9 上观看 2013 年的视频时,他们正在使用TypeScript.Api<...>从 typescript 定义文件中加载类型。

但是,我无法在任何地方找到这种类型的提供者。它位于哪里?我意识到大量类型定义已编译到库中并在 nuget 上可用,但我不能真正使用它,因为某些代码将是本地打字稿定义文件。

因此问题是

  1. TypeScript.Api<...>类型提供者在哪里 ?
  2. 如果它不可用或使用打字稿定义的最佳方式,还有哪些其他选项存在。
4

2 回答 2

2

正如 Thomas 所说,删除类型提供程序主要是因为它无法生成泛型类型,但我们的想法是在某个时候将其恢复。

目前,虽然不理想,但您可以按照这些步骤生成自己的绑定。

  1. 下载或克隆 Funscript 存储库

git clone https://github.com/ZachBray/FunScript

  1. 构建项目

cd FunScript build.cmd

  1. 这需要改进,但现在您需要压缩要转换的 .d.ts 文件,然后:

cd build\TypeScript bin\FunScript.TypeScript.exe C:\Path\to\typedefinitions.zip cd Output

请注意,第一次构建定义可能需要几分钟时间。在输出文件夹中完成后,您将找到已编译的带有绑定的 .dll 库。

此外,当你在它的时候。最好使用刚刚构建的 FunScript 版本build\main\bin,因为它可能比 nuget 包更新。

祝你好运,玩得开心(脚本)!

于 2015-09-06T20:42:21.583 回答
1

FunScript 发生了很多变化,因此TypeScript.Api<...>类型提供程序不再是从 FunScript 调用 JavaScript 库的推荐方式。

相反,JavaScript 库的绑定是预先生成的,您可以在 NuGet 上找到它们作为包,如果您搜索 FunScript 标记(NuGet 搜索不是很好,因此您可能需要浏览许多页面才能找到一个你需要的......)。

如果要使用本地 TypeScript 定义,则需要运行命令行工具来生成绑定。F# Atom 插件在构建脚本中执行此操作,因此寻找一个不错的起点。它在类型文件夹中具有各种 TypeScript 绑定的本地副本 (以及处理它们所需的 FunScript 二进制文件)。

我更喜欢类型提供者的方法,但遗憾的是,类型提供者在他们可以提供的类型方面有些限制,所以它并不是那么强大......

于 2015-09-06T14:57:32.383 回答