VSCode 仅在导入符号时呈现 JSDoc 链接到另一个文件 TDLR

如何解决VSCode 仅在导入符号时呈现 JSDoc 链接到另一个文件 TDLR

我正在尝试使用 JSDoc @link 注释来引用不同文件中的类,但 VSCode 无法识别它并且工具提示呈现为纯文本。

我找到了一种解决方法,将符号导入到我的文件中。但是,我不想导入某些内容以便它可以出现在文档中。

Screen capture

如何让它发挥作用?

TDLR

同一文件中的链接工作正常。问题仅在于跨文件链接,但在 VSCode's docs for the @link directive 中没有对该主题的相关参考。

我正在跑步:

  • VSCode 1.58.2
  • TypeScript 4.3.5

解决方法

这不正是您所期望的工作方式吗?如果您添加指向符号的链接,VS Code(或任何 IDE,实际上)需要知道您的确切意思是什么符号。

如果他们只需要猜测符号,他们不仅需要遍历所有可能的类型文件,还会有类,因为例如例如,您的 20 个依赖项(甚至单个依赖项中的 20 个文件)都创建了一个 export interface Options

可能使用 import('module').Export 作为类型。


或者,您可以使用在 TypeScript 3.5 中添加的 type-only import

import type { SomeType } from 'some-module';

// Works fine,since we're only using the type
type UsingTheType = Partial<SomeType>;

// Errors,because we didn't import the actual value
// (assuming it should be a value anyway,e.g. a class)
const someType = new SomeType();

如果您查看转换后的代码,您会注意到这实际上并没有产生 import/require。 Type-only 实际上不会在运行时导入,它只在编译时导入类型。

如果您在不使用值的情况下使用常规导入,TypeScript 应该会做同样的事情,但这更明确。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?
Java在半透明框架/面板/组件上重新绘画。
Java“ Class.forName()”和“ Class.forName()。newInstance()”之间有什么区别?
在此环境中不提供编译器。也许是在JRE而不是JDK上运行?
Java用相同的方法在一个类中实现两个接口。哪种接口方法被覆盖?
Java 什么是Runtime.getRuntime()。totalMemory()和freeMemory()?
java.library.path中的java.lang.UnsatisfiedLinkError否*****。dll
JavaFX“位置是必需的。” 即使在同一包装中
Java 导入两个具有相同名称的类。怎么处理?
Java 是否应该在HttpServletResponse.getOutputStream()/。getWriter()上调用.close()?
Java RegEx元字符(。)和普通点?