支持ES6模块语法和CommonJS

时间:2017-02-19 09:27:15

标签: javascript node.js typescript commonjs es6-modules

所以我有这个简单的模块:

export default function(){}

如果我不使用export default,那么TypeScript编译器会写一个警告,说我的"模块没有默认导出",我想避免。

所以要使用这个模块,我们会这样做:

import fn from 'my-module';

这一切都很好,但如果我想使用CommonJS导入它呢?

然后我必须这样做:

const fn = require('my-module').default;

这对用户来说非常尴尬。有没有办法解决这个问题?

1 个答案:

答案 0 :(得分:-1)

有相同的内容:

import tscmultiwatch from 'tsc-multi-watch';
const {default:tscmultiwatch} = require('tsc-multi-watch'); 

这样你可以避免不那么愉快:

const tscmultiwatch = require('tsc-multi-watch').default; 

tsc-multi-watch可能看起来像

export default function(){

}