相关疑难解决方法(0)

如何在TypeScript中的`window`上显式设置新属性?

我通过显式设置属性来为我的对象设置全局命名空间window.

window.MyNamespace = window.MyNamespace || {};
Run Code Online (Sandbox Code Playgroud)

TypeScript强调MyNamespace并抱怨:

属性'MyNamespace'在'window'类型的值上不存在任何"

我可以通过声明MyNamespace为环境变量并删除window显式来使代码工作,但我不想这样做.

declare var MyNamespace: any;

MyNamespace = MyNamespace || {};
Run Code Online (Sandbox Code Playgroud)

我怎样才能window留在那里让TypeScript开心?

作为旁注,我发现TypeScript抱怨特别有趣,因为它告诉我这种window类型any绝对可以包含任何东西.

typescript

502
推荐指数
25
解决办法
27万
查看次数

“Firebase 错误:Firestore 已启动,无法再更改其设置。” 将 Firebase v9 与 Firestore 模拟器连接

我几周前已更新到 Firebase v9,在尝试将我的 Firebase 应用程序连接到 Firestore 模拟器时遇到问题。

firebase.js(我的 VueJS 插件,我在其中设置 Firebase):

import { initializeApp, getApps } from "firebase/app"
import { getAuth, connectAuthEmulator, onAuthStateChanged } from "firebase/auth";
import { getFirestore, connectFirestoreEmulator } from "firebase/firestore"
import { getStorage, connectStorageEmulator } from "firebase/storage";
import { getFunctions, connectFunctionsEmulator } from 'firebase/functions';
import { isSupported, getAnalytics } from "firebase/analytics";

export default async ({ app }, inject) => {

  const firebaseConfig = {
    apiKey: process.env.FIREBASE_API_KEY,
    authDomain: process.env.FIREBASE_AUTH_DOMAIN,
    databaseURL: process.env.FIREBASE_DATABASE_URL,
    projectId: process.env.FIREBASE_PROJECT_ID,
    storageBucket: process.env.FIREBASE_STORAGE_BUCKET,
    messagingSenderId: process.env.FIREBASE_MESSAGING_SERVICE_ID,
    appId: …
Run Code Online (Sandbox Code Playgroud)

firebase vue.js firebase-tools nuxt.js google-cloud-firestore

9
推荐指数
2
解决办法
5566
查看次数

Firebase Firestore:实例初始化后无法调用 useEmulator()

我正在使用 Firebase Emulator Suite来测试我的 Firebase Cloud Functions,然后再将其部署到生产中。

探索这种方法以从我的 Andriod 设备触发可调用的 firebase 云函数。

我的应用程序在运行时崩溃了。

错误:

java.lang.IllegalStateException:实例已初始化后无法调用 useEmulator()。

错误来源 - FirebaseFirestore.java

/**
   * Modifies this FirebaseDatabase instance to communicate with the Cloud Firestore emulator.
   *
   * <p>Note: Call this method before using the instance to do any database operations.
   *
   * @param host the emulator host (for example, 10.0.2.2)
   * @param port the emulator port (for example, 8080)
   */
  public void useEmulator(@NonNull String host, int port) {
    if …
Run Code Online (Sandbox Code Playgroud)

android firebase firebase-tools google-cloud-functions google-cloud-firestore

6
推荐指数
1
解决办法
2358
查看次数

使用 Next.js 的 Firebase 模拟器

我正在尝试使用 Next.js 设置 Firebase 的 V9 模拟器,但没有成功。我总是收到这个错误 在此输入图像描述

我的 firebase 版本是9.1.1.

我的 Firebase 设置如下所示:

import { initializeApp, FirebaseApp } from "firebase/app";
import { initializeApp, FirebaseApp } from "firebase/app";
import firebase from "firebase/compat/app";
import { getAuth, connectAuthEmulator, Auth } from "firebase/auth";
import {
  getFirestore,
  connectFirestoreEmulator,
  Firestore,
} from "firebase/firestore";
import {
  getStorage,
  connectStorageEmulator,
  FirebaseStorage,
} from "firebase/storage";
import {
  getDatabase,
  connectDatabaseEmulator,
  Database,
} from "firebase/database";

let firebaseApp: FirebaseApp;
let auth: Auth;
let firestore: Firestore;
let storage: FirebaseStorage;
let db: Database; …
Run Code Online (Sandbox Code Playgroud)

javascript firebase next.js google-cloud-firestore

6
推荐指数
1
解决办法
920
查看次数