#javascript #html #firebase #firebase-realtime-database #google-chrome-extension
#javascript #HTML #firebase #firebase-realtime-database #google-chrome-extension
Вопрос:
У меня возникли проблемы с созданием Firebase в JS, в частности, с расширением.
Вот мой Manifest.json
{
"manifest_version": 2, //required
"version": "1.0", //required
"name": "Hello World!", //required
"description": "Learning how to make a chrome extension!",
"icons": {
"16": "images/puppy16.png",
"48": "images/puppy48.png",
"128": "images/puppy.png"
},
"browser_action":
{
"default_icon": "images/puppy.png",
"default_popup": "popup.html"
},
"background": {
"scripts": ["background.js"]
},
"content_security_policy": "script-src 'self' https://cdn.firebase.com https://*.firebaseio.com; object-src 'self'"
"permissions": [
"identity",
"tabs",
"activeTab",
"http://*/*",
"https://*/*"
]
}
И вот мой background.js файл
// Initialize Firebase
var config = {
apiKey: "xxxxxx",
authDomain: "xxx.firebaseapp.com",
databaseURL: "xxxx",
projectId: "xxx",
storageBucket: "xxx",
messagingSenderId: "xxx"
};
firebase.initializeApp(config);
var rootRef = firebase.database().ref();
function writeUserData(userId, name, email, imageUrl) {
rootRef.database().ref('users/' userId).set({
username: name,
email: email,
profile_picture : imageUrl
});
}
writeUserData("11", "pete", "p@g.com", "google.com")
В частности, я получаю сообщение об ошибке, в котором говорится: Неперехваченная ошибка ссылки: firebase не определена.
Возможно, проблема во внешних библиотеках?
Ответ №1:
Вы никак не импортировали firebase SDK. Просто поместить их в одну папку недостаточно, чтобы ваш файл знал о firebase. Добавьте файл firebase SDK js в часть сценариев манифеста, прежде чем ваш background.js скрипт. Скажите, что оно названо firebase.js
, в вашем манифесте должна быть эта строка:
"scripts": ["firebase.js", "background.js"]