如何在Svelte组件中每次prop更改时都进行获取请求?

  • 本文关键字:请求 获取 prop Svelte 组件 svelte
  • 更新时间 :
  • 英文 :


一个简单组件的脚本部分,该组件从它的父组件接收一个id,并基于该id触发一个获取请求。这里的问题是,组件只安装一次,因此,无论何时传递新道具,都不会发生变化。处理这种情况的最好方法是什么?

import request from "@src/modules/request"; //not important, performs a GET request
export let channelId;
let streams = [];
onMount(async()=>{
const response = await request({
url: `/streams?channel_id=${channelId}`,
});
streams = response.streams;
})

我尝试的:使用beforeUpdate,但这会导致多个不必要的调用。

您可以尝试响应式声明,如:

$: {
const response = await request({
url: `/streams?channel_id=${channelId}`,
});
streams = response.streams;
}

最新更新