我试图按照此处找到的Firebase上的Web快速入门进行操作,但我仍然遇到了第2步。
我使用HTML5模板在Cloud9上设置了一个新网页,其中包含以下基本内容:
<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(&#34; firebase&#34;);我收到错误
&#39; Firebase未定义&#39;。
如果我添加该行,我会收到错误:
&#39;未捕获的引用错误:未定义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的选项(在学校计算机上工作)。
答案 0 :(得分:4)
require()
并不存在于浏览器中 - 它特定于Node.js运行时,而不是JavaScript本身的一部分。您无法在浏览器中使用NPM模块,而无需使用额外的捆绑工具,例如Webpack。
也就是说,原始示例中的代码远没有工作 - 您只需要将src="https://cdn.firebase.com/js/client/2.4.0/firebase.js"
放在单独的脚本标记上,而不是包含代码的脚本标记。但要明确的是,这只是简单的JavaScript,而不是Node.js - 如果您尝试在HTML文档中编写Node代码,那么您就会误解Node实际上是什么!