Как связать мой фрагмент Firebase CDN с моим файлом JavaScript? - PullRequest
0 голосов
/ 28 сентября 2019

Я не могу связать приведенную ниже функцию с моим файлом JavaScript.Я использую фрагмент кода Firebase CDN.Что я делаю не так?

Фрагмент Firebase:

<!-- The core Firebase JS SDK is always required and must be listed first -->
<script src="https://www.gstatic.com/firebasejs/7.0.0/firebase-app.js"></script>

<!-- TODO: Add SDKs for Firebase products that you want to use
     https://firebase.google.com/docs/web/setup#available-libraries -->
<script src="https://www.gstatic.com/firebasejs/7.0.0/firebase-analytics.js"></script>

<script>
  // Your web app's Firebase configuration
  var firebaseConfig = {
    apiKey: "AIzaSyAPeU7jO2Zz5kdrh-4g4ehfcrL8Aufzubs",
    authDomain: "udemy-modern-javascript-cee40.firebaseapp.com",
    databaseURL: "https://udemy-modern-javascript-cee40.firebaseio.com",
    projectId: "udemy-modern-javascript-cee40",
    storageBucket: "udemy-modern-javascript-cee40.appspot.com",
    messagingSenderId: "941299603483",
    appId: "1:941299603483:web:afcd4f1da6878b51ef80be",
    measurementId: "G-BRYW3TQNLL"
  };
  // Initialize Firebase
  firebase.initializeApp(firebaseConfig);
  const db = firebase.analytics();


js file:
db.collection('recipes').get().then((snapshot)=>{
    console.log(snapshot);

}).catch(err =>{
    console.log(err)
});

Сообщение об ошибке:

sandbox.js: 1 Uncaught TypeError: db.collection isне функция в sandbox.js: 1 (анонимно) @ sandbox.js: 1

1 Ответ

0 голосов
/ 28 сентября 2019

Переменная db из тега script в вашем HTML-файле автоматически не доступна в файле .js.

Как правило, вы захотите поместить весь JavaScript (включая то, что у вас есть сейчас)в теге script в файле .js или есть все в теге script в файле HTML.

Поместить весь код в файл .jsболее распространенным, так что стало бы:

var firebaseConfig = {
  apiKey: "AIzaSyAPeU7jO2Zz5kdrh-4g4ehfcrL8Aufzubs",
  authDomain: "udemy-modern-javascript-cee40.firebaseapp.com",
  databaseURL: "https://udemy-modern-javascript-cee40.firebaseio.com",
  projectId: "udemy-modern-javascript-cee40",
  storageBucket: "udemy-modern-javascript-cee40.appspot.com",
  messagingSenderId: "941299603483",
  appId: "1:941299603483:web:afcd4f1da6878b51ef80be",
  measurementId: "G-BRYW3TQNLL"
};
// Initialize Firebase
firebase.initializeApp(firebaseConfig);
const db = firebase.analytics();

db.collection('recipes').get().then((snapshot)=>{
  console.log(snapshot);
}).catch(err =>{
  console.log(err)
});

const db = firebase.analytics();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...