将数据发送到firebase数据库时。我首先尝试推送由" new"创建的对象。关键词:
addPost(value: string){
this.postList.push(new PostObject(value, false));
}
无法在数据库中看到该对象。但是当我尝试使用对象文字时,它起作用了:
addPost(value: string){
this.postList.push({
text: value,
isLiked: false
});
}
PostObject类:
export class PostObject {
comment = [];
constructor(text: string, isLiked: boolean){}
}
那么上面两种方法有什么区别?有没有办法可以使用构造函数创建对象并将对象发送到数据库?
答案 0 :(得分:0)
是。
但你仍然可以使用"快捷方式"语法,如果您使用公共或私人关键字。我在打字稿操场上做了一些测试,它工作得很好!
看看:
https://www.typescriptlang.org/play/index.html#src=class%20PostObject%20%7B%0D%0A%0D%0A%20%20%20%20comment%20%3D%20%5B%5D%3B%0D%0A%0D%0A%20%20%20%20constructor(private%20text%3A%20string%2C%20private%20isLiked%3A%20boolean)%7B%7D%0D%0A%0D%0A%7D%0D%0A%0D%0Alet%20post%20%3D%20new%20PostObject(%22Test%22%2Ctrue)%3B%0D%0A%0D%0Alet%20button%20%3D%20document.createElement('button')%3B%0D%0Abutton.textContent%20%3D%20%22Post%22%3B%0D%0Abutton.onclick%20%3D%20function()%20%7B%0D%0A%20%20%20%20console.log(JSON.stringify(post))%3B%0D%0A%7D%0D%0A%0D%0Adocument.body.appendChild(button)%3B