angular - 如何以角度从 algolia 获取特定数据
问题描述
我在角度使用algolia。
我试图只从algolia获得特定记录。
我有一个 product_id 并想要记录product_id
这是我到目前为止所做的 -
.html 文件
<ais-instantsearch [conproducts]>
<ais-configure [searchParameters]="{ hitsPerPage: 1 }"></ais-configure>
<ais-hits>
<ng-template let-hits="hits">
<div class="row">
<div class="col-lg-2 col-md-3 col-sm-4 col-6"*ngFor="let hit of hits">
{{hit.name}}
</div>
</div>
</ng-template>
</ais-hits>
</ais-instantsearch>
.ts 文件
const searchClient = algoliasearch(
environment.algolia_application_id,
environment.algolia_search_api_key
);
export class ProductsComponent implements OnInit {
productsConfig = {
indexName: 'products',
searchClient
};
}
如何通过algolia中的 id 获取特定数据?
任何帮助将不胜感激,
谢谢
解决方案
通过阅读algolia文档的这一页:
https://www.algolia.com/doc/api-reference/api-methods/search/
.ts 文件
const searchClient = algoliasearch(
environment.algolia_application_id,
environment.algolia_search_api_key
);
export class ProductsComponent implements OnInit {
hits: any;
productsConfig = {
indexName: 'products',
searchClient
};
OnInit(){
const index = searchClient.initIndex(productsConfig.indexName);
index.search('query string', {
attributesToRetrieve: ['name','firstname', 'lastname'],
hitsPerPage: 50,
}).then(({ hits }) => {
console.log(hits); // check the console
this.hits = hits;
});
}
}