1

我正在尝试使用 Webpack 2 和ts-loader. 它曾经使用 Webpack 1 和 Rollup(没有 TypeScript)工作,但.default在调用导入的函数时会附加 Webpack 2。

例如:

import canvg from 'canvg';
canvg();

转变为

var canvg_1 = require("canvg");
canvg_1.default();

我明白了Uncaught TypeError: canvg_1.default is not a function

如何解决?

4

2 回答 2

3

问题出在 TypeScript 配置中,我在其中添加了一个module: 'es2015'并且tsconfig.json它有效。在某些情况下也allowSyntheticDefaultImports: true可能有所帮助(在我的情况下不是必需的,babel-plugin-add-module-exports@alejandro-garcia-anglada 描述的一些类似物)。

{
    "compilerOptions": {
        "module": "es2015",
        "allowSyntheticDefaultImports": true
    }
}
于 2017-06-22T14:23:49.700 回答
1

使用babel-plugin-add-module-exports你可以确保一切都按预期工作。

https://www.npmjs.com/package/babel-plugin-add-module-exports

于 2017-06-15T15:07:37.217 回答