【发布时间】:2022-09-26 21:01:55
【问题描述】:
我正在尝试将 bootstrap-table 与 svelte 集成,效果已应用于表,但 on:click 处理程序已被删除,据我所知,bootstrap-table 正在破坏表并重新创建它,因此所有事件处理程序都会丢失, 有没有解决的办法?
这是一个例子:
<script>
import { onMount } from 'svelte';
let users=[{id:1,name:"Adam",age:30},{id:2,name:"David",age:28}];
const delete_user = (id)=>{
users = users.filter((user) => user.id !== id);
}
onMount(async () => {
jQuery('#table').bootstrapTable();
});
</script>
<table class="table table-bordered table-striped m-4" id="table" data-search="true" >
<thead>
<tr><th data-sortable="true" >Name</th>
<th data-sortable="true">Age</th>
<th >Delete</th></tr>
</thead>
<tbody>
{#each users as user}
<tr>
<td>{user.name}</td><td>{user.age}</td>
<td><button on:click={() => delete_user(user.id)} >Delete</button></td>
</tr>
{/each}
</tbody>
</table>
在本例中,在应用 bootstrapTable() 时不再调用 delete_user;
这是一个尝试的链接,如果您在应用引导表之前按删除,它会在它不再工作之后工作:
https://svelte.dev/repl/01aeb031bd8046f8b2d161ead0bedf89?version=3.48.0
【问题讨论】: