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

标签 typescript visual-studio-code jsdoc

我正在尝试使用 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 逃脱惩罚。作为类型。

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

    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 应该执行相同的技巧,但这更明确。

    关于typescript - VSCode 仅在导入符号时呈现 JSDoc 链接到另一个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68611099/

    相关文章:

    angular - 动态更改 img [src]

    javascript - TSLint在javascript文件上

    json - tsconfig.json : Build:No inputs were found in config file

    powershell - VS Code 总是提示 : "older version of PackageManagement known to cause issues"

    css - 如何使用 Visual Studio Code 将任何扩展名格式化为 .css?

    javascript - 如何在 JSDoc 中指定类的类型(不是它的实例)

    jsdoc - 如何使用 JSDoc 记录回调?

    typescript - "No reducer provided for key X"console.error in redux jest 测试

    python - VSCode 无法识别 venv(Pyt​​hon)

    javascript - 如何使用 JSDoc 在 Typescript 中记录 JS 类