Я разрабатываю небольшое приложение с Ionic 3, запрашивающее базу данных Firebase для получения 2 серий данных.Первая сборка завершается с ошибкой «Свойство не существует для типа« {} »», но если я сохраню еще раз файл .ts (сохраните, например, home.ts, чтобы выполнить ионную перестройку), ошибка исчезнет, и страница заработает.
Я делаю:
ionViewDidLoad() {
this.db.list('myPath-in-firebase', ref => ref.orderByChild('my-key'))
.valueChanges()
.subscribe(result => {
let mydata1= result.map(x => x.my-property-key1);
let mydata2= result.map(x => x.my-property-key2);
console.log(mydata1);
};
}
, но получаю ошибку машинописного текста: "Свойство 'my-property-key1' не существует для типа '{}'" в первом ионном сообщении.служить начало сборки, затем я сохраняю файл проекта, ионная перестройка, и она работает нормально.Я предполагаю, что мне нужно где-то объявить x и его свойства, но я не могу знать, как и где.
Наконец (может быть, есть лучший метод, и вы могли бы мне помочь?), Моя БД выглядит так:
my-firebase-database
|- my-Path
|- Push-ID-1
|- my-property-key1: value
|- my-property-key2: value
|- Push-ID-2
|- my-property-key1: value
|- my-property-key2: value
|- Push-ID-3
|- my-property-key1: value
|- my-property-key2: value
У меня будет 2 массива, один из которых содержит значения my-property-key1, а другой - значения my-property-key2.Спасибо за помощь
Обновление : см. В комментариях.В настоящее время я использовал обходной путь, меняющий синтаксис с result.map (x => x.my-property-key1) на result.map (x => x [my-property-key1])
в соответствиина это: https://github.com/Microsoft/TypeScript/issues/12596