我正在使用WebStorm 7进行Firefox Add-on SDK开发。
WebStorm显示一个警告:"未解析的函数或方法",针对require()
。
我想要消除这个警告。
var pageMod = require("sdk/page-mod");
注意:我已经配置了JavaScript库(请参考/lib/sdk globals)。
环境:
- WebStorm 7.0.2
- Windows 7 64位
- Firefox插件SDK 1.15beta1
我正在使用WebStorm 7进行Firefox Add-on SDK开发。
WebStorm显示一个警告:"未解析的函数或方法",针对require()
。
我想要消除这个警告。
var pageMod = require("sdk/page-mod");
注意:我已经配置了JavaScript库(请参考/lib/sdk globals)。
环境:
您的意思是 require()
没有被解析?您需要在项目中添加 require.js
或者在 设置/语言和框架/JavaScript/库 中启用 Node.js Globals
预定义库。
(由 @yurik 编辑的设置路径)
在 WebStorm 2016.x-2017.x 版本中:请确保已启用 设置(首选项) | 语言和框架 | Node.js 和 NPM
中的 Node.js 核心库。
在 IntelliJ 2018.3.2+ 版本中,请前往 设置(首选项) | 语言和框架 | Node.js 和 NPM
并启用 Coding assistance for Node.js
。
styles: [require('./app.component.css')]
- a_drebimport {*} from 'node module'
替换 'require',并在 tsconfig.json 中指定 "target": "CommonJS"
。 - Bhoomtawath Plinsut在花费一小时尝试所有在线找到的解决方案后,最终这个方法起作用了!
文件 -> 清除缓存/重启...
File > Settings > Language & Frameworks > Node.js and NPM
然后点击启用按钮(显然在新版本中,它被称为“Node 的编码辅助”)。
使用Intellj 2016,Angular2和Typescript进行开发...唯一有效的方法是获取NodeJS的Typescript定义
从GitHub上的DefinitelyTyped获取node.d.ts
或者运行:
npm install @types/node --save-dev
然后在tsconfig.json中包含它
"types": [
"node"
]
在WebStorm 2016.3版本中
Press ALT+F12 (open terminal)
Run this command:
npm install require.js
对于WebStorm 2019.3版本,请在 文件(File) > 首选项(Preferences)或者 设置(Settings) > 语言与框架(Languages & Frameworks) > Node.js and NPM 中启用编码辅助(Coding assistance)以支持NodeJs。
请注意,您想使用的附加软件包已被包含在内。
File | Invalidate caches and restart
所做的唯一一件事情就是重置它足够长的时间以欺骗我认为错误已经消失了。一旦再次运行检查,错误就像不断送礼物一样回来了。Editor
> Inspections
>取消选中JavaScript
),然后安装ESLint插件,我省去了所有这些挫败感。Editor
> Inspections
> JavaScript
)并搜索“未解决的JavaScript”,关闭“未解决的JavaScript函数”和“未解决的JavaScript变量”来关闭引起“未解决的函数方法”的检查。好的,我已经看到很多已经给出的答案了,我想再添加一些已解决的未解决的函数/方法/变量警告。
这将解决"require的未解决函数或方法和其他一些警告"。
Go -> Preferences-> Languages & Frameworks -> Node.js and NPM, then checkmark the "Coding assistance for Node.js"
如果你仍然看到这种警告,未解决的变量或类似的内容,你可以通过以下步骤手动禁用这些警告。
Go -> Preferences-> Editor-> Inspections-> JavaScript-> General.
您将找到一个列表,只需取消选择您想要禁用的警告,然后应用即可。