Я пытаюсь подготовить некоторые старые приложения для устаревшей версии v2 в декабре.18. В электронных письмах Firebase говорится, что только аутентификация будет устаревшей, но мои функции AngularFire, похоже, тоже не работают из-за правил безопасности.Например -
$firebaseArray(ref.child('data').child('stuff')); <- used to work no problem
Но теперь (v3) говорится, что он не имеет права на доступ к этим данным.
Это правила пожарной базы -
$company:{
".read": "root.child('users').child(auth.uid).child('company').val() == $company || root.child('users').child(auth.uid).child('company').val() == 'COMPANY'",
однако, если я просто установил для чтения и записи значение TRUE, это снова работает.
$company: {
".read": "true",
".write": "true"
}
$ firebaseArray работает, но он срабатывает по правилам безопасности так, как раньше.Любые идеи о том, как я могу настроить правила, чтобы все работало так, как это должно быть?
Теперь, если я получу доступ к данным, используя метод моментального снимка v3, это работает!но теперь он не синхронизирован с данными, это просто снимок в этот конкретный момент.Причина, по которой я использовал $ firebaseArray и $ firebaseObject, заключается в том, что он будет синхронизироваться с любыми изменениями в БД.
firebase.database().ref('/stuff').once('value').then(function(snapshot) {
console.log('it worked!');
});
Спасибо!
****************** НОВЫЕ РЕДАКТЫ ********************* 12/14/18
firebase.initializeApp({
apiKey: APIKEY,
databaseURL: FIREBASE_URL, // Realtime Database
});
var stuffRef = firebase.database().ref().child('stuff');
var dataMaster = $firebaseObject(stuffRef);
Я получаю эту ошибку - ref.ref не является функцией
Что я делаюнеправильно??Спасибо!