【发布时间】:2021-09-20 20:58:42
【问题描述】:
我正在努力解决一个计时问题,因为我正在获取的 API 的数据响应在尝试处理数据之前没有完成。
这是我的例子:
### Template
<div class="container mx-auto" x-data="loadIdentities()">
<template x-for="item in filteredIdentities" :key="item">
<h6 x-text="item.name"></h6>
<em x-text="item.role"></em>
</template>
</div>
### SCRIPT
<script>
function loadIdentities() {
return {
search: "",
myData: "",
get filteredIdentities() {
fetch(`/api_endpoint`)
.then(res => res.json())
.then(data => {
this.myData = data
}
)
var foundIdentities = this.myData.filter((item) => {
return item.name
.toLowerCase()
.includes(this.search.toLowerCase());
});
return foundIdentities
},
};
}
</script>
错误:
Uncaught TypeError: this.myForData.filter is not a function
有没有一种好方法可以让我处理 javascript 等待 API 请求完成并从 API 填充数据?
【问题讨论】:
标签: javascript alpine.js