我有3个苗条的组成部分。 Comp应用程序,它导入Comp一和Comp二。两个如何在一个中调用函数?
答案 0 :(得分:1)
您可以从Comp1
导出一个在App
中得到引用的函数,然后向下传递给Comp2
作为道具。
示例(REPL)
<!-- Comp1.svelte -->
<script>
export function foo() {
alert('function in Comp1');
}
</script>
<!-- Comp2.svelte -->
<script>
export let onClick;
</script>
<button on:click="{onClick}">
Click me
</button>
<!-- App.svelte -->
<script>
import Comp1 from './Comp1.svelte';
import Comp2 from './Comp2.svelte';
let comp1;
</script>
<Comp1 bind:this="{comp1}" />
<Comp2 onClick="{() => comp1.foo()}" />