【发布时间】:2020-02-27 15:11:11
【问题描述】:
在 Firebase 推出 7.0.0 版本之前,我们一直在 Ionic 3.x 项目中使用 Firebase(只是数据库),没有出现任何编译错误。 Ionic 3.x 项目使用的常见 Typescript 版本是 2.6.2。
知道升级 Typescript 依赖项不是一个选项,我们可以做些什么来解决这个问题?还是 Firebase 的错误或放弃的支持(尚未传达)?
我们导入库的方式是标准的:
import * as firebase from 'firebase/app';
import 'firebase/database';
离子服务输出:
[app-scripts] [10:36:47] transpile started ...
[app-scripts] [10:36:54] typescript: node_modules/firebase/index.d.ts, line: 4336
[app-scripts] ';' expected.
[app-scripts] L4335: gtagName?: string;
[app-scripts] L4336: /** Sets custom name for `dataLayer` array used by gtag. */
[app-scripts] L4337: dataLayerName?: string;
[app-scripts] [10:36:54] typescript: node_modules/firebase/index.d.ts, line: 4336
[app-scripts] 'EventNameString' only refers to a type, but is being used as a value here.
[app-scripts] L4335: gtagName?: string;
[app-scripts] L4336: /** Sets custom name for `dataLayer` array used by gtag. */
[app-scripts] L4337: dataLayerName?: string;
[app-scripts] 'never' only refers to a type, but is being used as a value here.
[app-scripts] L4335: gtagName?: string;
[app-scripts] [10:36:54] typescript: node_modules/firebase/index.d.ts, line: 4336
[app-scripts] [10:36:54] typescript: node_modules/firebase/index.d.ts, line: 4336
[app-scripts] L4336: /** Sets custom name for `dataLayer` array used by gtag. */
[app-scripts] L4337: dataLayerName?: string;
[app-scripts] Cannot find name 'T'.
[app-scripts] L4335: gtagName?: string;
[app-scripts] L4336: /** Sets custom name for `dataLayer` array used by gtag. */
[app-scripts] L4337: dataLayerName?: string;
因此,我们暂时只能使用 firebase 6.6.2。
【问题讨论】:
-
我在发行说明中看不到任何相关内容:firebase.google.com/support/release-notes/js 如果您认为 Firebase JavaScript SDK 版本中存在错误,最好在其开源 repo 中报告SDK:github.com/firebase/firebase-js-sdk
-
@FrankvanPuffelen 谢谢。让我们看看...github.com/firebase/firebase-js-sdk/issues/2335
标签: typescript firebase ionic-framework