我创建了一个新模块“A”并尝试将其导入另一个名为“B”的模块中。我在编译时收到这个错误,上面写着
错误 TS1192:模块“A.module”没有默认导出
谁能帮忙解决这个错误。
我创建了一个新模块“A”并尝试将其导入另一个名为“B”的模块中。我在编译时收到这个错误,上面写着
错误 TS1192:模块“A.module”没有默认导出
谁能帮忙解决这个错误。
这是一个简单的错误。这是由于 import 语句本身的模块名称周围缺少 {} 而发生的。由于这杀死了我 2-3 个小时的时间,因此与大家分享,以免浪费您的时间。希望这可以帮助某人。干杯,阿比。
接受的答案对我不起作用,所以我发布了更多信息。
我有:
import Module from 'module';
这对我有用:
import * as Module from 'module';
来源:https ://github.com/Microsoft/TypeScript/issues/3337#issuecomment-107971371
利用:
import { Module } from 'module';
您需要在{...}之间插入模块名称
对我来说,这个问题是在项目的 tsconfig.json 中使用"allowSyntheticDefaultImports": true
within解决的。compilerOptions
我们的特定错误与时刻 js 导入有关。
tsconfig.json
我通过在我的角度项目中添加它来修复它。
{
...
"compilerOptions": {
...
"allowSyntheticDefaultImports": true,
除了将其作为模块导入之外,您还可以像这样要求它:
const Module = require('./some_folder/module');
module.ts
然后会有:
module.exports = class Module {
... your module code
}
我通过将以下内容放入tsconfig.json
文件中来解决上述问题:
{
"compilerOptions": {
...
"esModuleInterop": true
...
}
}
以上所有答案都没有解决我的错误。以下解决方案对我有用。在此之前,我已经运行以下命令
npm i @types/moment-timezone --save-dev
然后我在 .ts 文件中导入了如下所示的时刻。
import * as moment from "moment-timezone";
我希望,它会帮助某人。谢谢!