gpt4 book ai didi

javascript - 我如何存储 JSON 对象或其特定值以供进一步使用(Angular)?我唯一能做的就是记录它们

转载 作者:行者123 更新时间:2023-12-01 16:26:12 25 4
gpt4 key购买 nike

我正在使用 elasticsearch,以便根据我从传感器板收集的数据使用 kibana 创建一些可视化,但是我需要在我的 Angular 9 应用程序中使用其中的一些数据。我正在使用弹性 api 来获取数据,我唯一能做的就是记录它们,但我无法存储它们以供进一步使用。我用 python 尝试了同样的事情并且效果很好。我在使用 Angular 时做错了什么?

“这是代码”

es.getSource({id: "1", index:"acc_sensor", _source:"true"},
function(error,response){
if(error){
console.log("search error: "+error);
}
else{
console.log("---Response---");
console.log(response);
console.log("---particular value---")
this.roll = response['roll'];
console.log(this.roll);
}});

“这是运行代码后我在控制台中看到的”

This is what i have in the console after running the code

最佳答案

您可以将 Elasticsearch 调用包装在相应服务类中的 promise 中,并绑定(bind)到 View 组件中的结果。像这样的东西(仍然需要错误处理):

export interface ElasticSearchParam {
id: string;
index: string;
_source: string;
}

// Service
@ Injectable()
export class ElasticSarchService {

search(searchObj: ElasticSearchParam) {
return new Promise( (resolve, reject) => {
es.getSource(searchObj, (error, response) => {
if (error) {
reject(error);
} else {
resolve(response);
}
});
});

}
}

// your view component
@Component({
selector: "app",
template: `...<p>The roll is: {{roll}}</p>...`
})
class YourComponent {

private roll: any; // the actual data you want to use from the elasticSearch result

constructor(private elasticSearchService: ElasticSarchService) {}

async doSearch(term: string) {
const elasticSearchResult = await this.elasticSearchService.search({
id: "1",
index: "acc_sensor",
_source: "true"
});
this.roll = elasticSearchResult.roll; // or whatver you'd like to do with the response
}
}

关于javascript - 我如何存储 JSON 对象或其特定值以供进一步使用(Angular)?我唯一能做的就是记录它们,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60868987/

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