在Svelte#wait之后调用javascript函数的任何方法:然后
有没有办法在Svelte在Svelte#wait之后调用javascript函数的任何方法:然后,javascript,svelte,Javascript,Svelte,有没有办法在Svelte#wait:then之后调用javascript函数?在下面的代码中,我想做的是在我创建了带有一些id的空Datatable之后调用一个javascript表,然后在javascript中只在Datable中添加数据。因此,基本上我想在javascript函数中传递data1,并传递DataTable或DataTable元素本身的id。我有什么办法可以做到这一点吗 <div> <h1> Title</h1> {#await pr
#wait:then
之后调用javascript函数?在下面的代码中,我想做的是在我创建了带有一些id的空Datatable之后调用一个javascript表,然后在javascript中只在Datable中添加数据。因此,基本上我想在javascript函数中传递data1
,并传递DataTable或DataTable元素本身的id。我有什么办法可以做到这一点吗
<div>
<h1> Title</h1>
{#await promise}
loading...
{:then data}
{#each data as data1, i}
<DataTable id={data1.title}/>
<br />
---> I want to call javascript function here which would add data in the given data table. How can I do that?
{/each}
{:catch error}
<kat-alert header="Error" description={error.message} variant="warning" />
{/await}
</div>
标题
{#等待承诺}
加载。。。
{:然后是数据}
{#每个数据作为数据1,i}
--->我想在这里调用javascript函数,它将在给定的数据表中添加数据。我该怎么做?
{/每个}
{:捕获错误}
{/等待}
我不完全确定您想做什么,但是如果您创建的数据表应该接收数据,为什么不直接将其传递给它呢
{#each data as data1, i}
<DataTable id={data1.title} data={data1.actualdata}/>
{/each}
{#每个数据都作为data1,i}
{/每个}
或者,您可以向组件本身添加事件
{#each data as data1, i}
<DataTable id={data1.title} use:fillTable{data1, data1.title}></DataTable>
{/each}
<script>
const fillTable = (el, data, id) => () => {
// el would be the created element
// data and id were passed on in the #each
}
</script>
{#每个数据都作为data1,i}
{/每个}
常量填充表=(el,数据,id)=>()=>{
//el将是创建的元素
//数据和id分别在#中传递
}
第三种方法是将承诺移出标记,并将逻辑放入脚本标记本身,这将需要使用一些额外的变量来跟踪加载、错误等。。。但是,如果您想添加许多与promise解决方案本身相关的额外操作,那么最终可能会变得更干净。我想这更像是一个品味的问题