我正在尝试设置一个ES2015库,该库已添加到我的其他ES2015项目中。我已经尝试过了,这是我现在所处的位置: 我将ES2015模块转换为5,然后在我的基础项目中使用ES2015模块中的import。 My Lib只有一个导出测试模块的索引文件:
我的问题在于浏览器中的所有内容都有效,但导入时我没有在WebStorm中提示代码,所以我的lib不是很有用。
导入声明:
import { TestModule } from 'sfl';
代码提示失败:
ES2015 index.js:
export TestModule from './TestModule';
ES2015 TestModule.js:
export default class TestModule {
constructor() {
this.test = 'test';
}
static logTest(content) {
window.console.log(content);
}
}
这转化为:
ES5 index.js:
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.TestModule = undefined;
var _TestModule2 = require('./TestModule');
var _TestModule3 = _interopRequireDefault(_TestModule2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
exports.TestModule = _TestModule3.default;
ES5 TestModule.js:
'use strict';
Object.defineProperty(exports, "__esModule", {
value: true
});
var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck');
var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
var _createClass2 = require('babel-runtime/helpers/createClass');
var _createClass3 = _interopRequireDefault(_createClass2);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var TestModule = function () {
function TestModule() {
(0, _classCallCheck3.default)(this, TestModule);
this.test = 'test';
}
(0, _createClass3.default)(TestModule, null, [{
key: 'logTest',
value: function logTest(content) {
window.console.log(content);
}
}]);
return TestModule;
}();
exports.default = TestModule;
module.exports = exports['default'];
babelrc:
{
"presets": ["es2015", "stage-1"],
"plugins": ["transform-runtime", "add-module-exports"]
}