【发布时间】:2021-03-22 10:28:30
【问题描述】:
我试图让我可以在函数内部登录的数组在外部使用。我正在使用工兵。已经被这个问题困扰了好几个小时了,是时候联系社区了!
let dvd = [];
let artistName = [];
let searchString = [];
onMount(async () => {
const res = await fetch(`artists/all`);
const data = await res.json();
const newdata = data.map(x => {
if (x.titles.length > 0) {
dvd.push(x.titles[0].graphics.dvd)
artistName.push(x.titles[0])
}
})
})
let searchTerm = '';
async function getData() {
searchString.push(artistName.filter(d => d.artistName === searchTerm));
console.log(searchString)
}
【问题讨论】:
-
你指的是异步函数吗?
-
是的,异步 getdata。
-
var result=await getData()???
-
这个组件的 HTML 部分是什么?我不明白
getData是如何被调用的,也不知道searchString到底应该是什么。我认为您问题的最大部分是在数组上调用 push 不会触发 svelte'e 重新编译。您应该使用等式语句重置数组,例如searchString = artistName.filter(...) -
当我这样做时,我实际上得到了更多,因为我想要它,这很棒。但我仍然无法在函数之外得到它。 {searchString}
标签: javascript node.js svelte sapper