【问题标题】:error 'Firebase is not defined' in online IDE在线 IDE 中出现错误“未定义 Firebase”
【发布时间】:2016-02-03 14:41:19
【问题描述】:

我正在尝试按照此处找到的 Firebase 网络快速入门,但我卡在第 2 步。

我在Cloud9上新建了一个网页,使用HTML5模板,基本内容如下:

<html>
    <head>

    </head>
    <body>
        "Hallo"

        <script src="https://cdn.firebase.com/js/client/2.4.0/firebase.js">
            var myFirebaseRef = new Firebase('https://luminous-fire-8659.firebaseio.com/');
            myFirebaseRef.set({
              title: "Hello World!",
              author: "Firebase",
              location: {
                city: "San Francisco",
                state: "California",
                zip: 94103
              }
            });
        </script>
    </body>
</html>

如果我不添加行 var Firebase = require("firebase");我得到错误

'Firebase 未定义'。

如果我添加该行,我会收到错误:

'未捕获的引用错误:require 未定义。

我还尝试使用 nodeJS 模板,然后在终端中运行命令 $ npm install firebase --save。结果显示在终端:

firebase@2.4.0 node_modules/firebase
└── faye-websocket@0.9.3 (websocket-driver@0.5.2)

(所以安装 firebase 似乎可以工作)然后添加此代码页,但这并没有什么不同。

安全规则设置为默认值:

{
    "rules": {
        ".read": true,
        ".write": true
    }
}

如何解决这个问题?我没有在本地安装 nodeJS 的选项(在学校计算机上工作)。

【问题讨论】:

  • 你不能将 src 和我知道的脚本内容结合起来......你应该使用两个单独的 script 标签

标签: javascript node.js firebase cloud9-ide


【解决方案1】:

require() 不存在于浏览器中——它特定于 Node.js 运行时,而不是 JavaScript 本身的一部分。如果不使用 Webpack 等额外的捆绑工具,您将无法在浏览器中使用 NPM 模块。

也就是说,原始示例中的代码离工作不远了 - 您只需将 src="https://cdn.firebase.com/js/client/2.4.0/firebase.js" 放在一个单独的脚本标记上,然后再包含您的代码。但需要明确的是,这只是普通的 JavaScript,而不是 Node.js——如果你试图在 HTML 文档中编写 Node 代码,你就会误解 Node 的真正含义!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-31
    • 2022-01-10
    相关资源
    最近更新 更多