Обнаружение угловых изменений работает на основе событий браузера, так как это обратный вызов базового события, который не вызовет обнаружение изменений.Попробуйте следующее:
Import NgZone:
import { Component, NgZone } from '@angular/core';
Добавьте его в свой конструктор класса
constructor(public zone: NgZone, ...args){}
Выполните код с zone.run:
ref.orderByChild('title').on('value', (dataSnapshot) => {
console.log("Title is: " + dataSnapshot.val().title);
this.zone.run(() => this.title = dataSnapshot.val().title;)
});