gpt4 book ai didi

javascript - 如何将数据从一个组件传递到另一个组件

转载 作者:行者123 更新时间:2023-12-02 23:12:32 25 4
gpt4 key购买 nike

我是项目中的新手。我的问题是我想将数据从一个组件传输到另一个组件。实际上我想在数据库的文本字段中显示数据,然后必须更新它。我有一个组件名称ricerca.component.ts,其中显示表中的数据。现在,当我单击特定行(行)时,该特定记录的数据必须在其他组件名称中显示为generatecontract.comonent.ts。我不知道如何执行此操作。

我创建了一个模型名称 ContractDblist 将所有这些值分配给该模型,但不幸的是没有解决其他组件中的问题

这是我的 Ricercacomponnet 代码

    if(tag === 'Item1'){      
this.router.navigate(['/workflow/rigester' ]);
}
}
public lstContractRecordDbValue :any[];
getContractRecordbyParameter(selecteditem: any, index: number) { this.workFlowService.getContractRecordbyParameter(selecteditem).subscribe(data => {
this.lstContractRecordDbValue = data;
this.contractdblist.cnt_num=this.lstContractRecordDbValue[0].CNT_NUM;
this.contractdblist.contract=this.lstContractRecordDbValue[0].CONTRACT; this.contractdblist.contacttype=this.lstContractRecordDbValue[0].CONTRACT_TYPE; this.contractdblist.contractno=this.lstContractRecordDbValue[0].CONTRACT_NO;
this.loading = false;
}, error => {
console.error('getAllTickets', error);
this.loading = false;
})
}

最佳答案

您可以使用主题来做到这一点

import { Injectable } from "@angular/core";
import { Subject } from "rxjs";

@Injectable()
export class MessageService {
private subject = new Subject<any>();

constructor() {}

sendMessage(message: any) {
this.subject.next(message);
}

getData() {
return this.subject.asObservable();
}
}

因此可以调用MessageService类方法sendMessage()来发送数据

我在这里定义了2个方法。第一个方法使用 next() 将消息发送给下一个订阅者。因此,在您的组件中,您只需要像这样简单地订阅即可获取数据

private subscription$: Subscription;

public ngOnInit(): void {
this.subscription$ = this.messageervice
.getData()
.subscribe(data => { console.log(data); })
}

public ngOnDestroy(): void {
this.subscription$.unsubscribe();
}

关于javascript - 如何将数据从一个组件传递到另一个组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57283375/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com