【问题标题】:How to use built in typescript definitions of a npm package (firebase in particular)如何使用 npm 包的内置 typescript 定义(特别是 firebase)
【发布时间】:2021-10-26 10:16:01
【问题描述】:

我正在用 typescript 为 firebase 编写一个网络应用程序。但我无法让导入为 firebaseui 和 firebase 本身工作。 这是我的一个普遍问题,我永远无法导入没有 @types 包的库附带的类型定义。我的设置似乎有问题,但我找不到我走错路的地方。

我刚刚通过 npm 安装了“firebaseui”,并尝试在 firebase 的文档中使用它,但我无法正确导入 firebaseui 和 firebase.auth。 Visual Studio Code 也不为此提供导入。

我会将导入写成如下所示:

import { firebase } from 'firebase';
import { firebaseui } from 'firebaseui';

我也看到其他使用这个也不起作用

import { firebase, firebaseui } from 'firebase';

编译器找不到模块“firebase”。包裹内的打字似乎没有被拾取。

我的 tsconfig.json 看起来像这样:

    "compilerOptions": {
        "target": "es2015",
        "strict": true,
        "strictNullChecks": false,
        "esModuleInterop": true,
        "forceConsistentCasingInFileNames": true
    }
}

我的 TSC 版本是 7.15.1

我找到了这个问题,但没有任何解释,它也不起作用。 How to get TypeScript to recognize firebase import

【问题讨论】:

    标签: typescript firebase typescript-typings firebaseui


    【解决方案1】:

    这确实是我自己的错误。我关注了 firebase 网站上的官方文档,包的 github 页面可能有更多最新或更准确的(?)文档 firebaseui 必须导入为:

    import firebaseui from 'firebaseui';
    

    没有大括号。

    Firebase 隐藏在 firebase 的子文件夹中:

    import firebase from 'firebase/compat/app';
    

    在他们使用 import 而不是 require 来显示正确路径的包的 github 页面上找到了解决方案。 https://github.com/firebase/firebaseui-web

    【讨论】:

      猜你喜欢
      • 2019-05-01
      • 2016-10-05
      • 2018-08-24
      • 2016-06-16
      • 1970-01-01
      • 2018-06-07
      • 1970-01-01
      • 1970-01-01
      • 2020-05-01
      相关资源
      最近更新 更多