gpt4 book ai didi

javascript - TypeScript - 没有定义文件的第三方库 - 智能感知可能吗?

转载 作者:搜寻专家 更新时间:2023-10-30 21:02:03 24 4
gpt4 key购买 nike

我使用的 IDE 是 WebStorm,但我的问题适用于任何 IDE。


我正在为我的项目安装一些第三方节点模块,其中一些在 DefinitelyTyped 中没有可用的定义文件,或者定义文件已过时。我目前对这些库使用的解决方法是以下之一:

  1. 将第三方命名空间/模块声明为类型any
  2. 声明一个最小定义,它指定我使用的库公开的方法。例如:

    declare module 'redux-simple-router' {
    export function syncHistory(history: any): any

    export function routeReducer(): any
    }

2 比 1 好一点,因为它提供了更多信息,并且我能够自动完成方法名称,但是,如果我使用非- 带 Babel 的 ES6 typescript 。有什么方法可以在我的项目中结合两种智能感知方式吗?

换句话说,我正在寻找的是一种告诉 WebStorm 的方法:对于每次导入,如果您有类型定义,请使用它,如果没有,请使用常规智能感知(即在 node_modules 中搜索导入)。

我希望我的问题的措辞是有意义的,如果有任何混淆,请告诉我。

最佳答案

Is there any way that I can combine both intellisense ways in my project?

好吧……目前,如果 WebStorm 可以同时使用 typescript stub 和 node_modules 解析某些函数,结果将被合并(可能导致在尝试去声明时出现“多个定义”等)。如果由于模块的定义方式(动态等)而无法从 node_modules 解析,则仅使用 typescript stub 。将来,我们计划只使用 stub 来完成/错误检查,但(如果可能的话)在导航到定义/搜索用法时使用 node_modules

关于javascript - TypeScript - 没有定义文件的第三方库 - 智能感知可能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34870860/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com