【发布时间】:2016-08-31 14:20:51
【问题描述】:
我正在使用 WebStorm 并希望使用 ES6 导入而不是 require。但是,当将 import 与使用 CommonJS 的库(如 lodash)一起使用时,我会收到来自 WebStorm 的警告“无法解析符号”。
代码完美地工作,因为 babel 将导入转换为要求,我只希望 WebStorm 继续运行并且不显示任何错误。我不想部分使用 ES6 导入,部分需要。
我正在使用 WebStorm 版本 2016.2.2。
【问题讨论】:
-
webstorm 可以解析来自 CommonJS 模块的 es6 导入,但仅适用于显式导出模块的情况,例如
module.exports = module_name;或类似的;但是 lodash 模块以一种棘手的方式暴露出来:var freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports; var freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module; var moduleExports = freeModule && freeModule.exports === freeExports; var _ = runInContext(); if (freeModule) { (freeModule.exports = _)._ = _; freeExports._ = _; }. -
谢谢,这很有帮助,所以它只是 lodash 问题。你能把它作为一个答案,以便我标记它吗?
标签: webstorm