将多个导入合并为一个打字脚本



我想从firebase-admin导入如下内容,但TypeScript不允许我这样做:

import * as firebase from 'firebase-admin';
import * as admin from 'firebase-admin';

我最终出现以下错误:

ERROR: 17:1   no-duplicate-imports  Multiple imports from 'firebase-admin' can be combined into one.

我尝试使用以下,但没有一个工作:

import * as firebase, admin from 'firebase-admin';
import * as firebase, * as admin from 'firebase-admin';

有什么方法可以在TypeScript中将这两者一起导入吗?

只导入一次,并将另一个放入常量中

import * as firebase from 'firebase-admin';
const admin = firebase

不能从同一模块添加多个导入语句。您可以做的是导入一次,然后使用该常量访问同一模块中的不同模块。

请参阅以下内容,因为es 不允许多次进口

https://eslint.org/docs/rules/no-duplicate-imports

让我们记住一个基本原理separation of concerns。让我们从重构文件结构开始

- src
-- firebase
---- admin.js
---- regular.js
---- visitor.js
---- index.js

然后在index.js上,你可以有一些类似的:

import * as admin from "./admin";
import * as regular from "./regular";
import * as visitor from "./visitor";
export const firebase = {
admin, regular, visitor
};

最新更新