我正在尝试将
Observable
转换为 Signal
以便从 login
函数返回。
login(username: string, password: string): Signal<LoginResponse> {
const sourceObservable: Observable<LoginResponse> =
this.http.post<LoginResponse>(this.apiUrl + '/login', {username, password})
let lrp: LoginResponse = LoginResponse.withStatus(ResponseStatus.PENDING)
return toSignal<LoginResponse>(sourceObservable, {requireSync: true, initialValue: lrp,}
)
}
在 return 语句中,我使用
toSignal()
接受一个 ToSignalOptions
对象,并将 requireSync
设置为 true 和初始值。然而,编译器向我抱怨没有重载匹配,因为它期望未定义类型的 initialValue
,而我提供的是 LoginResponse
类型。它应该是LoginResponse,但分析器不喜欢这样。
我是否做错了什么我忽略的事情?
请从
requireSync
中删除
ToSignalOptions
仅当 initialValue
为假时才允许
requireSync