我有一个简单的订阅方法,在其中将响应分配给messageIds
messageIds;
this.messageService.subjectPassMessageId.subscribe(data => {
this.messageIds = data
console.log(this.messageIds) // ['3', '4', '8']
})
但是,当我在其他函数调用中访问
messageIds
时,它为空,是否会丢失某些内容?addTagToMessage() {
console.log(this.messageIds) // [] empty
}
完整方法:
ngOnInit() {
this.messageService.subjectPassMessageId.subscribe(data => {
this.messageIds = data
console.log("message ids",this.messageIds)
})
}
addTagToMessage() {
console.log("The message ids", this.messageIds) [] //empty
}
的HTML:
<button (click)="addTagToMessage()">Tag Message</button>
最佳答案
仅在执行addTagToMessage()方法之后,messageIds才会获取值。希望那是原因
关于javascript - 在其他函数中访问时,响应预订中设置的Angular 4值为空,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48767386/