未捕获的 ReferenceError:Flutter 中未定义 firebase

2023-12-13

我无法初始化 Firebase在我的 Flutter 项目中我尝试过输入 the firebase-app.js ,firebase-auth.js and firebase-analytics.js但我目前正在使用的没有任何效果Firebase 9.0.1,我厌倦了解决这个错误,它从 1 周开始就没有解决,我已经尝试了 Stackoverflow 上的所有内容,并搜索了 Firebase 和 Flutter 上的文档,我附上了构建和运行时得到的错误检查的屏幕截图,

另外,我已经在我的 Firebase 控制台中启用了 Firebase 功能,因此是否需要将其导入到我的项目中,目前我还没有使用它,但这是强制性的吗?

第一次运行时flutter run -d chrome the 错误输出 is,

enter image description here

main.dart:

import 'package:flutter/material.dart';
import 'package:devcom/auth.dart';
import 'package:devcom/auth_provider.dart';
import 'package:devcom/root_page.dart';
import 'package:firebase_core/firebase_core.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return AuthProvider(
      auth: Auth(),
      child: MaterialApp(
        title: 'Flutter login demo',
        theme: ThemeData(
          primarySwatch: Colors.blue,
        ),
        home: RootPage(),
      ),
    );
  }
}

索引.html:

<!DOCTYPE html>
  <html>
  <head>
   
    <meta charset="UTF-8">
    <meta content="IE=Edge" http-equiv="X-UA-Compatible">
    <meta name="description" content="A new Flutter project.">
  
    <!-- iOS meta tags & icons -->
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <meta name="apple-mobile-web-app-title" content="devcom">
    <link rel="apple-touch-icon" href="icons/Icon-192.png">
  
    <!-- Favicon -->
    <link rel="shortcut icon" type="image/png" href="favicon.png" />
  
    <title>Devcom</title>
    <link rel="manifest" href="manifest.json">
  </head>
<body > 
    <script src="https://www.gstatic.com/firebasejs/9.0.1/firebase-app.js" type = "module"></script>
    <script src="https://www.gstatic.com/firebasejs/9.0.1/firebase-analytics.js" type="module"> </script>
    <script src="https://www.gstatic.com/firebasejs/9.0.1/firebase-auth.js" type = "module"></script>
    <script src="https://www.gstatic.com/firebasejs/9.0.1/firebase-firestore.js" type="module"></script>
  <!-- The core Firebase JS SDK is always required and must be listed first --><script> var firebaseConfig = {
      apiKey: "...",
      authDomain: "......",
      databaseURL: ".....",
      projectId: "...",
      storageBucket: "",
      messagingSenderId: "",
      measurementId: "",
      appId: "1:.........:web:...........",
    };
    firebase.initializeApp(firebaseConfig); // the error is pointing out this line for the cause 
    firebase.analytics();
</script><script>
var serviceWorkerVersion = null;
var scriptLoaded = false;
function loadMainDartJs() {
  if (scriptLoaded) {
    return;
  }
  scriptLoaded = true;
  var scriptTag = document.createElement('script');
  scriptTag.src = 'main.dart.js';
  scriptTag.type = 'application/javascript';
  document.body.append(scriptTag);
}

if ('serviceWorker' in navigator) {
  // Service workers are supported. Use them.
  window.addEventListener('load', function () {
    // Wait for registration to finish before dropping the <script> tag.
    // Otherwise, the browser will load the script multiple times,
    // potentially different versions.
    var serviceWorkerUrl = 'flutter_service_worker.js?v=' + serviceWorkerVersion;
    navigator.serviceWorker.register(serviceWorkerUrl)
      .then((reg) => {
        function waitForActivation(serviceWorker) {
          serviceWorker.addEventListener('statechange', () => {
            if (serviceWorker.state == 'activated') {
              console.log('Installed new service worker.');
              loadMainDartJs();
            }
          });
        }
        if (!reg.active && (reg.installing || reg.waiting)) {
          // No active web worker and we have installed or are 
          installing
          // one for the first time. Simply wait for it to activate.
          waitForActivation(reg.installing ?? reg.waiting);
        } else if 
        (!reg.active.scriptURL.endsWith(serviceWorkerVersion)) {
          // When the app updates the serviceWorkerVersion changes, 
          so we
          // need to ask the service worker to update.
          console.log('New service worker available.');
          reg.update();
          waitForActivation(reg.installing);
        } else {
          // Existing service worker is still good.
          console.log('Loading app from service worker.');
          loadMainDartJs();
        }
      });

    // If service worker doesn't succeed in a reasonable amount of time,
    // fallback to plaint <script> tag.
    setTimeout(() => {
      if (!scriptLoaded) {
        console.warn(
          'Failed to load app from service worker. Falling back to plain <script> tag.',
        );
        loadMainDartJs();
      }
    }, 4000);
  });
} else {
  // Service workers not supported. Just drop the <script> tag.
  loadMainDartJs();
}
</script>
</body>
</html>
 

pubspec.yaml:

dependencies:
  flutter:
    sdk: flutter
  firebase_auth: 
  cupertino_icons: 
  firebase_core: 
  firebase_core_web:
  firebase_auth_web:
    
dev_dependencies:
  flutter_test:
    sdk: flutter
  mockito:

使用版本 8.7.1 的编辑建议:

它让我震惊:Failed to load resource: net::ERR_NAME_NOT_RESOLVED


我认为你应该将 firebase 版本更改为 8.7.1

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

未捕获的 ReferenceError:Flutter 中未定义 firebase 的相关文章

随机推荐

  • 如何在透明矩形上绘制阴影?

    当我向矩形添加投影位图效果时 投影会考虑矩形的透明度 有意义 有没有办法在透明矩形上渲染阴影 就好像 矩形是不透明的 即出现的是一个带有阴影的矩形 洞 下面是带有阴影的透明矩形的 XAML 没有显示任何内容
  • memory.limit() 混淆:“不再支持 memory.limit()”

    当我写 memory limit 时 我收到以下 bug 消息 内存 limit 1 信息 警告信息 不再支持 memory limit 我需要的是增加内存大小 谢谢 看来这不是一个错误 在阅读版本 4 2 0 2022 04 22 提供的
  • 使用 pyspark 压缩后目录大小增加

    我使用 pyspark 编写了一个文件压缩器 它的工作方式是将目录的所有内容读取到 Spark 数据帧中 然后执行重新分区操作以减少文件数量 所需文件的数量由以下公式计算 directory size Wanted file size 我面
  • 在闭包中使用“this”

    我只是好奇 我应该如何在 jQuery 函数中使用 this 例如 如果我有这样的代码 headEl find form blog search input focus function this next span animate opa
  • 在 python 中打开文件时,我不断收到“标识符中的无效字符”

    所以我尝试使用以下代码打开一个文件 open datapickle rb as f names F approximate pickle load f However I constantly get 我能做什么来解决这个问题 请帮忙 两个
  • SQL语法错误

    CREATE TABLE users id INT UNSIGNED NOT NULL AUTO INCREMENT type ENUM member admin NOT NULL username VARCHAR 30 NOT NULL
  • VTK 帧缓冲区和 OpenCV Mat 数据之间的转换

    我正在 VTK 中可视化数据 我想获取渲染窗口的帧缓冲区并在 OpenCV 应用程序中显示它 我目前正在尝试通过以下方式 void aig VirtualScene Mat cv Mat m typedef unsigned char pi
  • C# 中的密码加密?

    如何在 C 中加密和解密密码 谢谢你的帮助 首先 您实际上并不打算将加密密码保存在任何地方 而是执行单向哈希 例如 SHA 存储该哈希值 然后 当您向用户询问其密码时 您将执行相同的哈希 如果新的哈希值与存储的哈希值匹配 则说明匹配 哈希和
  • 在 python 应用程序中导入 Google Cloud Bigquery api 模块时出错

    我正在尝试将 bigquery 导入到我的 python 应用程序中from google cloud import bigquery并使用 dev appserver py 在本地运行它 但我收到一个错误 File Volumes Bud
  • Linux 上的 CreateFile CREATE_NEW 等效项

    我编写了一个尝试创建文件的方法 不过 我设置了标志 CREATE NEW 因此它只能在它不存在时创建它 它看起来像这样 for handle CreateFileA filePath c str 0 0 NULL CREATE NEW FI
  • ServiceStack客户端添加附件

    我正在使用 ServiceStack ServiceClient Web XmlServiceClient 连接到 Web 服务 有没有办法在请求中添加附件 更多信息 我想做的是避免使用 Microsoft Web Services2 因为
  • Bootstrap-Sass:使用另一个变量覆盖变量

    我在我的一个项目中使用 Bootstrap sass 并且我想使用 Sass 变量对其进行自定义 当然 我创建了一个名为 variables scss 的新 scss 文件 并将其导入到 bootstrap sass 文件之前的主 scss
  • 如何在后续瀑布步骤中检索自适应卡的表单提交

    我正在使用 Bot Framework V4 并且我有一个包含两个步骤的 WaterfallDialog 第一步是捕获表单数据 第二步是处理表单数据 第一步发送回复 private async Task
  • ASP.NET 中第一次单击时按钮 OnClick 未触发?

    protected void ButtonCancel Click object sender EventArgs e Response Redirect Logon aspx 第一次单击取消按钮时这不起作用 确保仅在以下情况下才绑定到事件
  • 关于本地数据库与基于服务的数据库的问题

    我对本地数据库和基于服务的数据库有一些疑问 使用基于服务的数据库是否需要用户安装 SQL Server 如果是这样 有什么办法可以解决吗 本地数据库是否要求用户安装 SQL Server 本地数据库和基于服务的数据库有什么区别 我说的是Vi
  • Java 正则表达式模式

    我需要帮助解决这件事 查看以下正则表达式 Pattern pattern Pattern compile A Za z A Za z Matcher matcher pattern matcher s1 我想查找这样的单词 自制 aaaa
  • 如何在 iPhone 上从 UIWebView 的 HTML 引用本地图像文件?

    我想用 img src temp jpg 在我的 UIWebView 的 HTML 中 如何引用名为的本地文件temp jpg节省宝贵的加载时间 当然 显而易见的选择是 img src 但我不知道我的根在哪里 这将创建一个 URL 对象 其
  • Pyramid 中的 HTML 表单名称数组解析 (Python)

    有什么办法可以Pyramid处理 HTML 表单输入 如下所示
  • 如何像 Spotify 的播放器一样创建居中的 UICollectionView

    我在尝试创建像 Spotify 播放器中那样的 UICollectionView 时遇到了很多困难 其行为如下 对我来说问题有两个 1 如何将单元格居中 以便您可以看到中间的单元格以及左侧和右侧的单元格 如果我创建方形单元格并在每个单元格之
  • 未捕获的 ReferenceError:Flutter 中未定义 firebase

    我无法初始化 Firebase在我的 Flutter 项目中我尝试过输入 the firebase app js firebase auth js and firebase analytics js但我目前正在使用的没有任何效果Fireba