用于 cloudboost 的打字稿(并将其与 ionic2 一起使用)

Posted

技术标签:

【中文标题】用于 cloudboost 的打字稿(并将其与 ionic2 一起使用)【英文标题】:Typescript typings for cloudboost (and use it with ionic2) 【发布时间】:2016-04-26 05:43:35 【问题描述】:

我想知道 cloudboost.io https://github.com/CloudBoost/javascriptSDK 的任何可用类型。我没有为现有 js 模块编写类型的经验。我试图准备任何最愚蠢的 d.ts 但没有成功。即使用ionic2和npm install cloudboost(目前也需要单独使用npm install fs)我试图使用cloudboost.d.ts之类的。

declare module "cloudboost" 

declare var CB: any;
declare module "cloudboost" 
  export var CB: any;

结果很奇怪,因为 cloudboost 包含在 ionic2 构建中(使用它的 webpack 配置)但是当使用 i.e.时

import * as CB from "cloudboost";

或类似的import 变体返回一些socket.io 对象的CB 值,即使内部webpack 调用似乎引用了正确的cloudboost 代码。所以即使是anydumb object 一开始也会让我满意。

【问题讨论】:

【参考方案1】:

我们还没有用于 CloudBoost JavaScript SDK 的 typescript 类型,但您应该可以自己创建一个。

这是我在针对此问题查找 SO 后发现的内容。

这是一个用 TypeScript 编写的示例 Node 模块:https://github.com/basarat/ts-npm-module

这是一个使用此示例模块https://github.com/basarat/ts-npm-module-consume的示例 TypeScript 项目

基本上你需要:

使用 commonjs 编译并声明:true

生成 .d.ts 文件

然后

让您的 ide 读取生成的 .d.ts。

如果这有帮助,请告诉我。

-纳瓦兹 CloudBoost.io 支持人员

【讨论】:

让我知道您是否可以创建一个,以及您是否想为 repo 做出贡献。向我们发送 PR。 :) 这是另一个可能有帮助的链接:github.com/Microsoft/TypeScript/wiki/Typings-for-npm-packages 感谢提示!实际上在答案中,原来的 npm 模块已经是一个打字稿,但我还是会继续尝试。虽然 MS 资源听起来很有帮助...

以上是关于用于 cloudboost 的打字稿(并将其与 ionic2 一起使用)的主要内容,如果未能解决你的问题,请参考以下文章

打字稿并将对象转换为字符串

Visual Studio Code 中的打字稿是不是有自动导入功能?

我如何结合两个 gulp 任务

类型上不存在属性。打字稿

我如何遍历表单数组并将其值设置为打字稿中的另一个数组?

如何设计用于导出的打字稿项目