Используя push()
, вы создаете новый узел с идентификатором, который автоматически генерируется Firebase (-Lz6G...
).
Если вы хотите написать узел с идентификатором что вы генерируете (0
, 1
, 2
в вашем случае), вам придется использовать метод set()
.
Проблема, с которой вы можете столкнуться в вашем случае (поскольку вы создаете объекты типа {bItem: this.bucketListItem, isCompleted: false}
один за другим ), вы не знаете, какой последний идентификатор присутствует в базе данных. Таким образом, вам придется запросить базу данных, чтобы найти значение последнего идентификатора и увеличить его (предпочтительно через транзакция ).
Или, если вы можете создать объекты в одном Пакетно, используя массив объектов, как показано ниже, идентификаторы узла будут следовать последовательности 0
, 1
, 2
.
Вы можете попробовать следующее:
var bucketListItems = [
{ bItem: 'Item1', isCompleted: false },
{ bItem: 'Item2', isCompleted: false }
];
const bucketRef = this.angularFireDb.list('/bucketList/');
bucketRef.set(uid, bucketListItems);