angular - 预计会出现 typescript 错误 ';'。 'EventNameString' 仅指一种类型,但在此处用作值

标签 angular typescript firebase ionic-framework

我正在尝试将 firebase 电话身份验证添加到旧的 ionic 项目中,并遵循了几个教程。我设法实现了它,但每次我都这样做 ionic serve -l出现此错误:

errors screenshot

但是我注意到如果我在 app.modules.ts 中评论其中一行,错误就会消失。在我做之后 ionic serve -l :

import { AngularFireModule } from "@angular/fire";
import { AngularFireAuth } from "@angular/fire/auth";

由于错误在 node-modules 文件夹中,我尝试多次删除它,甚至在其他 PC 上尝试过,在这里和那里遵循了一些答案,但我无法解决它。

错误文本:
Typescript Error
';' expected.
gtagName?: string;
/** Sets custom name for `dataLayer` array used by gtag. */
dataLayerName?: string;

Typescript Error
'EventNameString' only refers to a type, but is being used as a value here.
/** Sets custom name for `dataLayer` array used by gtag. */
dataLayerName?: string;

Typescript Error
'never' only refers to a type, but is being used as a value here.
/** Sets custom name for `dataLayer` array used by gtag. */
dataLayerName?: string;

Typescript Error
Cannot find name 'T'.
/** Sets custom name for `dataLayer` array used by gtag. */
dataLayerName?: string;


ionic 信息:
Ionic Framework: ^3.9.8
Ionic App Scripts: 3.2.4
Angular Core: ^5.2.7
Angular Compiler CLI: ^5.2.7
Node: 12.13.1
OS Platform: Windows 10
Navigator Platform: Win32
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.88 Safari/537.36
app.modules.ts导入的依赖:
import { ErrorHandler, Injectable, Injector, NgModule } from "@angular/core";
import { IonicApp, IonicErrorHandler, IonicModule } from "ionic-angular";
import { BrowserModule } from "@angular/platform-browser";
import { HttpModule } from "@angular/http";
import { HttpClient, HttpClientModule } from "@angular/common/http";

import { Geolocation } from "@ionic-native/geolocation";
import { NativeGeocoder } from "@ionic-native/native-geocoder";

import { MyApp } from "./app.component";
import { TabsPage } from "../pages/tabs/tabs";
import { Loading } from "../pages/loading/loading";
import { Welcome } from "../pages/welcome/welcome";
import { GeoPage } from "../pages/geo/geo";

import { IonicStorageModule } from "@ionic/storage";
import { StatusBar } from "@ionic-native/status-bar";
import { SplashScreen } from "@ionic-native/splash-screen";

import { APIService } from "../services/api_service";
import { CartService } from "../services/cart_service";
import { PushService } from "../services/push_service";
import { UtilService } from "../services/util_service";
import { OrderHistoryService } from "../services/order_history_service";

import { TranslateLoader, TranslateModule } from "@ngx-translate/core";
import { TranslateHttpLoader } from "@ngx-translate/http-loader";
import { RestaurantsPageModule } from "../pages/catalog/restaurants/restaurants.module";
import { GeoPageModule } from "../pages/geo/geo.module";
import { AngularFireModule } from "@angular/fire";
import { AngularFireAuth } from "@angular/fire/auth";
import { firebaseConfig } from "../config";
import { LoginPage } from "../pages/personal/login/login";
import { AuthService } from "../services/auth.service";
import { NgxErrorsModule } from '@ultimate/ngxerrors';

最佳答案

最重要的是你必须是你正在使用 =而不是 :EventNameString尝试将类型设置为 EventNameString 时.这就是为什么您收到错误“EventNameString”仅指一种类型,但在此处用作值的原因。

对于其他人,如我所见,这些主要是语法错误。正如@nircraft 建议你应该尝试清洁 node_modules它是 cache并重新安装它。

关于angular - 预计会出现 typescript 错误 ';'。 'EventNameString' 仅指一种类型,但在此处用作值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59474577/

相关文章:

firebase - Firebase 上的通知是否使用云?

java - 使用 Marker 对象外部的数据为 Marker 创建自定义信息窗口

javascript - 为什么可观察源在竞赛(或合并)中使用时不发出值,但在我手动订阅它时发出值

javascript - typescript 访问修饰符

angularjs - Angular2 Observables - 创建我自己的 - 订阅者未定义

javascript - 在 TypeScript 中从这个实例化?

firebase - 带 firebase 的 Nodemcu(ESP8266)

javascript - Angular2 应用程序一半使用 Typescript 和 Javascript

angular - 如何将 AngularFire2 身份验证作为可观察的?

typescript - 使用静态类属性时,类型 Y 上不存在属性 X