保存对 "variable" angular 的回复
Save response to "variable" angular
如何将此响应保存到变量以便我可以从其他函数访问它?
代码:
export interface launchResponse {
status: number;
url: string;
token: string;
}
export interface launchResponseObject {
response: launchResponse;
}
然后在一个服务中:
LAUNCHRESPONSE: launchResponseObject[] = [];
async getData() {
try {
const LAUNCHRESPONSE = await this.http
.get<launchResponseObject>(
`${$apiUrl}`
)
.toPromise();
console.log(LAUNCHRESPONSE.response.url)
console.log(LAUNCHRESPONSE.response.token)
} catch (error) {
console.log(`Promise rejected with ${JSON.stringify(error)}`);
}
}
我知道我可以像这样保存它:this.url = LAUNCHRESPONSE.response.url 但我想保存整个东西然后像我在其他函数中的这个函数一样访问它。
我也尝试过使用 this.LAUNCHRESPONSE 而不是 const LAUNCHRESPONSE,但没有成功。我知道这确实很愚蠢,但我不知道是什么。
不确定保存整个内容并像您编写的函数一样访问是什么意思。如果您的要求是获取从 api 响应中获得的值而无需再次调用它,则可以在使用 [ 设置 api 响应后为其使用 getter 函数=21=] .
您的服务将如下所示:
LAUNCHRESPONSE: launchResponseObject[] = [];
async getData() {
try {
this.LAUNCHRESPONSE = await this.http
.get<launchResponseObject>(
`${$apiUrl}`
)
.toPromise();
console.log(LAUNCHRESPONSE.response.url)
console.log(LAUNCHRESPONSE.response.token)
} catch (error) {
console.log(`Promise rejected with ${JSON.stringify(error)}`);
}
}
getStoredResponseData(){
return this.LAUNCHRESPONSE;
}
稍后您可以调用服务内部声明的getStoredResponseData()获取响应详情。
如何将此响应保存到变量以便我可以从其他函数访问它?
代码:
export interface launchResponse {
status: number;
url: string;
token: string;
}
export interface launchResponseObject {
response: launchResponse;
}
然后在一个服务中:
LAUNCHRESPONSE: launchResponseObject[] = [];
async getData() {
try {
const LAUNCHRESPONSE = await this.http
.get<launchResponseObject>(
`${$apiUrl}`
)
.toPromise();
console.log(LAUNCHRESPONSE.response.url)
console.log(LAUNCHRESPONSE.response.token)
} catch (error) {
console.log(`Promise rejected with ${JSON.stringify(error)}`);
}
}
我知道我可以像这样保存它:this.url = LAUNCHRESPONSE.response.url 但我想保存整个东西然后像我在其他函数中的这个函数一样访问它。
我也尝试过使用 this.LAUNCHRESPONSE 而不是 const LAUNCHRESPONSE,但没有成功。我知道这确实很愚蠢,但我不知道是什么。
不确定保存整个内容并像您编写的函数一样访问是什么意思。如果您的要求是获取从 api 响应中获得的值而无需再次调用它,则可以在使用 [ 设置 api 响应后为其使用 getter 函数=21=] .
您的服务将如下所示:
LAUNCHRESPONSE: launchResponseObject[] = [];
async getData() {
try {
this.LAUNCHRESPONSE = await this.http
.get<launchResponseObject>(
`${$apiUrl}`
)
.toPromise();
console.log(LAUNCHRESPONSE.response.url)
console.log(LAUNCHRESPONSE.response.token)
} catch (error) {
console.log(`Promise rejected with ${JSON.stringify(error)}`);
}
}
getStoredResponseData(){
return this.LAUNCHRESPONSE;
}
稍后您可以调用服务内部声明的getStoredResponseData()获取响应详情。