Javascript 错误 - 未定义要求

Javascript error - Require is not defined

我正在尝试将我的网络应用程序连接到 firebase 数据库。使用本地服务器托管网站时,出现错误 index.js:11 Uncaught ReferenceError: Require is not defined

我安装了 npm firebase-tools,我相信我的 html 和 js 设置是正确的。

我真的不知道如何从这里前进。欢迎所有帮助。

代码片段

    <script src="https://www.gstatic.com/firebasejs/7.16.1/firebase-app.js"></script>
    
        <script src="https://www.gstatic.com/firebasejs/7.16.1/firebase-firestore.js"></script>
    
        <script src="/__/firebase/init.js"></script>
    
        <script src="index.js"></script>



// Your web app's Firebase configuration
var firebaseConfig = {
    apiKey: "AIzaSyAOjGyQG0eHQLqXomKYKTpdg0tmwaZvaiU",
    authDomain: "library-app-d49fe.firebaseapp.com",
    databaseURL: "https://library-app-d49fe.firebaseio.com",
    projectId: "library-app-d49fe",
    storageBucket: "library-app-d49fe.appspot.com",
    messagingSenderId: "168203985001",
    appId: "1:168203985001:web:d79809c549371b5df642f8"
};

const firebase = require("firebase");

// Required for side-effects
require("firebase/firestore");

您的项目似乎是标准 Web 项目(不存在模块捆绑器)。这就是为什么你不能使用 require(),它是 Node.js API.

如果确实如此,那么你可以setup firebase using their CDN's:

index.html

<body>
  <!-- Firebase App -->
  <script src="https://www.gstatic.com/firebasejs/7.16.1/firebase-app.js"></script>
  <!-- Firestore -->
  <script src="https://www.gstatic.com/firebasejs/7.16.1/firebase-firestore.js"></script>
  <!-- Your custom JS file -->
  <script src="index.js"></script>
</body>

index.js

var firebaseConfig = {
  apiKey: "AIzaSyDOCAbC123dEf456GhI789jKl01-MnO",
  authDomain: "myapp-project-123.firebaseapp.com",
  databaseURL: "https://myapp-project-123.firebaseio.com",
  projectId: "myapp-project-123",
  storageBucket: "myapp-project-123.appspot.com",
  messagingSenderId: "65211879809",
  appId: "1:65211879909:web:3ae38ef1cdcb2e01fe5f0c",
  measurementId: "G-8GSGZQ44ST"
};


firebase.initializeApp(firebaseConfig);

如果您使用的是 firestore,则可以创建它的一个实例,并将其分配给一个常量供以后使用:

const firestore = firebase.firestore()

应该可以了。

要了解有关 require() 的更多信息,请查看此 question