![](/img/trans.png)
[英]Intellisense from JSDoc not working for imported types in VSCode
[英]Where is this VSCODE intellisense coming from?
在VSCODE中,我看到以下智能提示:
在探索node_modules/sanctuary/index.js
,我找到了一个toMaybe
函数,但是它似乎没有定义来自这里,因为它们不匹配
//# toMaybe :: a? -> Maybe a
//.
//. Takes a value and returns Nothing if the value is `null` or `undefined`;
//. Just the value otherwise.
//.
//. ```javascript
//. > S.toMaybe (null)
//. Nothing
//.
//. > S.toMaybe (42)
//. Just (42)
//. ```
这与通常显示的其他功能相反:
两个问题:
更新:
Lukas Bach和ippi指出, Sanctuary.Static.toMaybe<A>(p: A): Maybe<A>
来自自动类型获取功能。
即使从~/Library/Caches/typescript/2.9/node_modules/types-registry
删除了所有@types
之后,我仍然看到一些文档。
我也无法在@types/sanctuary/index.d.ts
文件或@types
目录中的任何位置找到文本toMaybe :: a -> Maybe a
。
编程语言TypeScript是JavaScript的超集,它允许为函数和变量定义适当的类型。 可以将TypeScript编译为JavaScript,从而删除所有类型注释,并且可以在编译过程中导出单独的类型定义文件(* .d.ts)。 如今,通常直接在模块存储库本身中或作为DefinitelyTyped存储库的一部分为JS模块提供TypeScript类型定义。
要为您自己的代码获取此类类型注释,您可以首先在TypeScript中编写代码,也可以自己编写其他自定义类型定义文件。
这不是编写类型定义的唯一方法,而是目前最突出的方法。
编辑:好的,我没有真正调查您之前提到的软件包。 但是我已经尝试过了,这就是它给我的IntelliSense批注。
这似乎来自TS键入:
toMaybe<A>(p: A | null | undefined): Maybe<A>;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.