Typescript v 2.7发布了一个名为--esModuleInterop
https://www.typescriptlang.org/docs/handbook/compiler-options.html的非常简洁的旗帜,我试图弄清楚是否有办法将它与tsconfig.json
一起使用,因为它目前还没有似乎记录在案:http://www.typescriptlang.org/docs/handbook/tsconfig-json.html
除非它以某种方式与module?
我想要实现的主要用例是能够导入这样的东西
import React from "react"
而不是
import * as React from "react"
如果可能的话,从我的tsconfig中执行此操作
答案 0 :(得分:23)
是的,在tsconfig.json中执行"esModuleInterop": true
。对于可以传递给CLI的每个标志选项,通常可以在配置文件中以这种方式完成相同的操作。在命令行上执行tsc --init
会生成一个tsconfig,其中包含解释所有可用选项的注释。
编辑:我了解到esModuleInterop
的行为取决于module
的设置。
如果您有"module": "commonjs"
,则只需启用"esModuleInterop": true
。
如果您有"module": "es2015"
或"module": "esnext"
,则还必须启用"allowSyntheticDefaultImports": true
才能导入CommonJS模块(如React)作为默认值。
答案 1 :(得分:2)
我也面临同样的问题,
devDependencies { “typescript”:“^ 2.9.1” }
希望这会起作用!!!!!!!!!!!!