所以,我已经研究了很长一段时间了。我有一个带有textarea的模态。我想要发生的是,当有人点击发帖时,我想看看他们发布的内容。目前,它返回未定义,我不明白为什么。这是代码:
test.component.html
<form>
<div class="form-group">
<label for="exampleFormControlTextarea1">Confess.</label>
<textarea class="form-control" id="textarea" rows="3"></textarea>
</div>
<button type="button" (click)="submitPost()" class="btn btn-primary postMssg">
Post
</button>
</form>
<div *ngFor="let data of datasource; let i = index">
{{ data.post }}
<button
type="submit"
data-toggle="modal"
[attr.data-target]="'#' + data.key"
(click)="check('#' + data.key)"
>
Reply
</button>
<div
class="modal fade"
[attr.id]="data.key"
tabindex="-1"
role="dialog"
aria-labelledby="exampleModalLabel"
aria-hidden="true"
>
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title" id="exampleModalLabel">Modal title</h5>
<button
type="button"
class="close"
data-dismiss="modal"
aria-label="Close"
>
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<form>
<div class="form-group">
<label for="commentText">Example textarea</label>
<textarea
class="form-control data.key"
id="commentText"
rows="3"
></textarea>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">
Close
</button>
<button
type="button"
(click)="addComment(data.key)"
class="btn btn-primary"
>
Post
</button>
</div>
</div>
</div>
</div>
</div>
test.component.ts
addComment(key) {
let res = "." + key;
let complete = $("." + key).val();
console.log(complete);
}
check(key) {
console.log(key);
}
submitPost() {
// console.log(this.idCount);
let post = $("#textarea").val();
if (post !== "") {
// this.posts = [];
let item = this.db.list("/test").push({
post: post,
name: localStorage.getItem("name"),
likes: 0,
id: this.idCount + 1,
likeBtn: 0,
fireBtn: 0,
time: moment().format("llll")
});
this.db.database
.ref("/test")
.child(item.key)
.update({ key: item.key });
this.datasource.push({
post: post,
name: localStorage.getItem("name")
});
}
let result = this.db
.list("/testID")
.valueChanges()
.subscribe(val => {
val.forEach((value: any) => {
this.db.database
.ref("/testID")
.child("1")
.child("idCount")
.transaction(count => {
return count + 1;
});
this.unsubscribe(result);
});
});
$("#textarea").val("");
}
如果您不愿意提供2美分,请随时向我发送可能有帮助的帖子或文章。我已经阅读了很多SO帖子,没有什么比我正在处理的更像。我之前做过这个,我不记得有这么难的时间把它放在一起。 Anywho,我正在尝试为我创建的网站发布评论部分。当您看不到数据时,很难创建评论部分。
我认为这是我的类名的一个问题,但它们都是独一无二的,并且在我尝试console时填充。在addComment部分记录它们
textArea尚未分配模型。在textarea中使用ngModel并将该模型传递给关闭模态的标记。
加:
<ion-textarea placeholder="Comienza a dictar" [(ngModel)]="data" name="title" class = "botonesNotaPorAudio"></ion-textarea>
data
包含textArea的值,也就是说,如果您编写“Hello”,则TEH VARIBLE的值为“Hello”。
在“.ts”文件中,您可以执行以下操作:
dismiss(data:any) {
this.viewCtrl.dismiss(data);
}
您将收到组件中的信息
modal.onDidDismiss(data => {
this.otherPuntoDescripcion=Object.assign({},data);
this.puntoDescripcion.getDescripcion(this._dataBaseService,this.selectConvocatoria,localStorage.getItem("idPunto")).then(
(resp:any)=>{
this.listPuntoDescription=resp;
}
);
});