Я хочу отслеживать событие из базы данных в реальном времени или могу отложить функцию в Js
Я использую responseiveVoice для вызова очереди, но когда я хочу вызвать ту же старую очередь снова, у нее нет звука, потому что я помещаю то же значение в свою базу данных реального времени в базе данных firebase, на которую я подписываюсь по статическому пути.
Но если я обновлю новое значение или что-то еще, оно снова будет работать.
Я пытаюсь window.setTimeout, чтобы удалить старое значение, прежде чем нажать его снова, но это не работает. Могу ли я отследить, что я нажимаю то же значение или способы вызова que это снова.
Мой исходный код выглядит так. (Я пытаюсь работать в React)
class QueWait extends Component {
constructor(props){
super(props);
this.state = {
ques: []
};
let app = this.props.db.database().ref('StockQ/1');
app.on('value', snapshot => {
this.getData(snapshot.val());
});
}
getData(val) {
let queValue =val;
this.setState({
ques: queValue
});
window.responsiveVoice.speak("Number" + queValue +"line up
please.", "US English Female");
}
Моя база данных. (Пожарная база)
"Qnum" : 20,
"StockQ" : {
"1" : 15,
"2" : 10,
"Show" : 13,
"stock" : 16
}