问题标签 [tsd]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
typescript - “HTMLElement”类型上不存在属性“noUiSlider”
这是一个路障。我究竟做错了什么?
我的 TSD 文件包含来自https://github.com/retyped/nouislider-tsd-ambient/blob/master/nouislider.d.ts的 nouislider 类型
错误详情:
想法?
编辑:我的 IDE (PHPStorm) 暗示可能有错误。
这表明lib.es6.d.ts
并且当然noUiSlider
不会在那里。
编辑(解决方案):
typescript - 我应该如何在 TypeScript 2 中使用@types
到目前为止,我们习惯于tsd或(它的更好版本)类型
但是既然 TypeScript 2 提供了新@types
功能,我应该如何将我当前的项目转换为使用 @types?
我有所有依赖项的 tsd.json(在某些情况下是 typings.json),迁移到 TypeScript 2 的步骤是什么?
有哪些新的最佳实践?@types 是否支持特定版本?
typescript - 打字稿找不到模块'wnumb'
这导致Error TS2307: Cannot find module 'wnumb'.
但是,如果我这样做:
它编译。
使用来自https://github.com/retyped/wnumb-tsd-ambient/blob/master/wnumb.d.ts的类型 ,我需要做前者,因为我需要在 AdvancedSlider 类中处理它。
我究竟做错了什么?
编辑 2016 年 8 月 2 日
无法让它工作。
用过的:
这对我来说似乎是失败的。继续...
typescript - Typescript 的类型定义管理系统(如 tsd)的最佳解决方案是什么?
在使用 Typescript 时,我们需要考虑如何解析类型定义文件(*.d.ts)。
据我所知,有以下几种管理打字稿定义系统的系统。
- tsd
- 打字
- @types
我猜 tsd 是最古老的,那就是起源。但是,为什么typings
需要出生呢?我想为打字制作定义文件有点复杂。
实际上是什么@types
?
那么,围绕这个问题的最佳解决方案是什么?
javascript - 各种库和不同版本的 TypeScript 定义 - Typings,DefinitelyTyped
两者都DefinitelyTyped
允许typings
我们使用现有的 JS 库以及社区提供的 TypeScript 绑定(定义、.d.ts)。我的问题是 -这些平台中的任何一个都提供了对某个库的某个版本使用绑定的可能性吗?
例如,我可以在DefinedTyped/jQuery中看到,它只支持这个:
这是唯一的文件。jQuery 似乎是非常流行的库。所以我希望对其他库的支持会更糟。
无论如何,TS 绑定是否仍然如此不成熟以至于它们不允许指定给定库的目标版本?是否计划添加此功能?
angularjs - bluebird promise.js 意外令牌
我的电脑在“任务服务”构建角度解决方案时崩溃了。重新启动后,出现以下错误。此错误显示在我电脑上的所有 Angular 项目中。
typescript - TypeScript:如何使现有的命名空间成为全局的?
我试图停止使用 TSD 在通过全局变量使用许多库的项目中获取类型定义(如果这很重要outFile
,则使用该选项tsconfig.json
)。特别是,它以这种方式使用 Moment 库。Moment 提供了自己的类型定义作为 NPM 包的一部分。但是,这些定义并未在全局范围内声明任何内容。请注意,moment
它既是类型的全局变量,moment.MomentStatic
又是类型命名空间。使用 NPM 包,我怎样才能扩大全局范围,使一切都开始工作,因为它现在与从 TSD 获得的旧类型定义一起工作?即,moment
应该在任何文件中全局可用,既可以作为变量,也可以作为类型命名空间。基本上,我想要的是这些方面的东西:
这不编译:
有解决方法吗?
angularjs - 基于 Angular tsd 的应用程序 + JAR 中的 Spring Boot
我遇到了与项目配置有关的问题。我正在开发一个由服务器端(Spring Boot App)和客户端(Angular-Gulp)组成的应用程序。我想配置我的项目,这样当我构建一个 jar 文件时,它将包括客户端和服务器端。我应该从什么开始?我正在使用 Maven。甚至可能吗?(如果您需要我的一些代码来回答这个问题,请告诉我)。
提前感谢您的回答。
typescript - 从 tsd 导出打字稿
文件index.ts
(使用 swagger-codegen 生成)
文件tsd.d.ts
typescript 2.2.1.
为什么我仍然需要import myDTO from 'path/to/file/myDTO'
在我的文件中使用导入语句( ) ts
?我错过了一个概念,应该声明一个模块吗?
typescript - 在 TypeScript v2.2.2 中,如何为没有 tsd 的 Javascript 库创建定义文件?
我正在寻找一个完整的示例,或者至少是为 @types 中没有或包含在包中的 JavaScript 库创建定义文件(不一定必须是 tsd)的最佳实践。
到目前为止,我已经能够将一个基本的解决方案放在一起,但它似乎没有遵循 TypeScript 网站上“定义”部分中给出的确切指导。
在上面的存储库中,我正在使用 package @google-cloud/datastore
,据我所知还没有 tsd 文件。该文档足够好,我应该能够为我感兴趣的部分创建手动定义文件,但是我很难弄清楚手动导出此类定义的最佳实践是什么。
具体来说,从这里,它说:
根据上面的说明,听起来我应该能够将index.d.ts
文件放入我的node_modules/@types
目录之外的文件夹中,该文件夹模仿与我的模块相同的文件夹结构。例如,在我的存储库中,我有一个@google-cloud/datastore
包含 index.ts 文件的顶级目录,但是从文档中听起来我应该能够使用 index.d.ts 文件;但是,我的模块和编译器都无法找到它。我需要一个编译器选项吗?
其次,我在存储库中采用的方法是否正确。这种方式在他们的网站上没有记录,我不得不在找到解决方案之前猜测它。我实际上是将 JavaScript 包google-cloud/datastore
导入 index.ts,添加我的类型,然后将其导出以供我的模块使用。但是,我的模块必须引用包,./@google-cloud/datastore
因为这是 TypeScript 定义的实际位置。
简而言之,在 TypeScript v2.2.2 中,为不包含 tsd 的 JavaScript 库创建小型、本地、TypeScript 定义文件的最佳实践是什么?
后果
我用Alex建议的解决方案更新了我的存储库,一切似乎都按预期工作。我想指出,它似乎也可以通过添加一个{ "baseUrl": "types" }
参数来工作,但我不清楚为什么这是正确的,所以我采用了建议的方法。旗帜对此--traceResolution
非常有帮助。
在这个示例中,我确保还包含另一个具有 TypeScript 定义的模块lodash
,以确保正常的模块分辨率仍然正确。
我的目录/文件结构:
跟踪分辨率
只是出于好奇,我想发布一个不正确/正确结果的示例 call tsc --traceResolution
。为了清楚起见,我对结果进行了缩写。
Incorrect没有paths
参数 TypeScript 解析@google-cloud/datastore
到index.js
文件,这是错误的。
用paths
参数修正。请注意,@google-cloud/datastore
解析为index.d.ts
文件而不是 JavaScript 文件。