【问题标题】:Intellij Idea/Webstorm jsdoc analysis issue ,Unresolved variableIntellij Idea/Webstorm jsdoc分析问题,未解决的变量
【发布时间】:2016-09-25 13:26:00
【问题描述】:

我有一个函数,我声明参数 asd

@param {HTMLElement} node

然后我会像这样使用它

node.parentElement

但它抱怨 Unresolved variable parentElement

我无法将类型更改为 Node,因为我需要它是 HTMLElement(我稍后使用 .id)

我可以做一个 JSDoc 更改来修复这个或其他解决方案(这并不难看)

【问题讨论】:

    标签: javascript intellij-idea webstorm jsdoc


    【解决方案1】:

    Node.parentElement 属性未在 Idea 核心 JavaScript 库 (WEB-21824) 中定义。您可以按如下方式添加其定义:

    • 在编辑器中打开 plugins\JavaScriptLanguage\lib\JavaScriptLanguage.jar!\com\intellij\lang\javascript\index\predefined\DOMCore.js 文件,将其内容复制到新的 js 文件中
    • Node.prototype.parentElement = 0; 添加到它。看看其他属性定义是什么样的以了解一下

    • 要么将此文件添加到您的项目中,要么将其设置为 Settings (Preferences) | Languages & Frameworks | JavaScript | Libraries 中的 javascript 库以将其用于完成等。

    请注意,此属性似乎不是标准的(尽管大多数浏览器都支持它)- 在https://www.w3.org/TR/2004/REC-DOM-Level-3-Core-20040407/core.html#ID-1950641247 中看不到它。

    【讨论】:

    • 编辑该文件的副本后,下一步是什么?是否应该编辑原始 .jar(将在更新时替换)
    • 你可以替换原始 jar 中的文件,当然.. 但是我不推荐破解它们
    • 您可以编辑答案并添加您推荐的最后一步吗?我该如何处理新文件? (我是否将其添加到项目中?)
    • 是的 - 它应该放在您的项目文件夹中或配置为 javascript 库。我已经相应地更新了答案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-11-15
    • 1970-01-01
    • 1970-01-01
    • 2017-04-11
    • 2013-12-12
    • 1970-01-01
    • 2018-07-28
    相关资源
    最近更新 更多