我尝试创建一个网站,为我的学校作业提供课文。我已经完成了身份验证和课程备份。现在,我尝试创建一个实时聊天。但是,当我更改数据库时,有必要重新加载网站以进行更改。没有重装怎么办?
我加载脚本的服务:
import { HttpClient } from "@angular/common/http";
import { Injectable } from "@angular/core";
@Injectable()
export class CoursService {
liste_cours = []
constructor(private httpClient: HttpClient) {
this.getCoursFromServer()
}
saveCoursToServer() {
this.httpClient
.put("https://databaselink/cours.json", this.liste_cours)
.subscribe(
() => {
console.log("Enregistrement terminé!");
},
error => {
console.log("Erreiorr ! : " + error);
}
);
}
getCoursFromServer() {
this.httpClient
.get<any[]>("https://databaselink/cours.json")
.subscribe(
response => {
this.liste_cours = response;
console.log("Loading finish");
},
error => {
console.log("Error!: " + error);
}
);
}
}
谢谢你的回答!
您似乎通过向其发出HTTP请求来访问Firebase实时数据库。这意味着您在进行HTTP调用时获取当前数据,但之后不会收到数据更新。当您重新加载页面时,您再次获取最新数据。
有几种方法可以在数据更改时自动更新页面,而无需用户重新加载页面。
on('value'
listener或subscribing to the node获得实时更新。我强烈建议您按照给出的顺序考虑这些解决方案。