Мы использовали Firebase (только база данных) в проекте Ionic 3.x без каких-либо ошибок компиляции, пока Firebase не выпустил версию 7.0.0. Общая версия Typescript, используемая в проектах Ionic 3.x: 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;
Так что на данный момент мы застряли с базой 6.6.2.