javascript - 将多个导入组合到一个打字稿中
问题描述
我想从 中按如下方式导入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 中将这两者一起导入?
解决方案
让我们记住一个基本原则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
};
推荐阅读
- android - NativeScript 谷歌 API
- android - 向下滑动,向上动画仅在片段中第一次起作用
- java - JobIntentService onHandleWork 未被调用
- ios - 快速从 ID 元素获取 innerText 不能与 webView 一起使用
- azure-data-factory-2 - How to send the parameter values to azure data factory using powershell
- python - 使用 for 和 if 循环将不同长度的元素组合到一个 Python 列表中
- android - 为什么在将 Android Path 对象添加到数组后,还可以向其添加更多行?
- angular - Angular 2+ 动画:向循环生成的单个复选框添加复选框检查效果
- java - 使用 JAX-RS 2.0 客户端 API 将文件作为表单参数之一的输入发布
- c# - 模拟存根和起订量设置的行为不同?Moq 中存根的等价物是多少?