我有这个苗条的 repl 作为我正在尝试做的一个例子:
https://svelte.dev/repl/91d21e1baa564ecea6afbc4df7d9d24c?version=3.23.2
目标是进行双向绑定,但通过按钮控制/触发从组件到应用程序的方式。
由于对象的直接引用,简单的方法绕过了。但是,克隆对象会阻碍从 Component 到 App 的返回。
我很困惑,不知道该怎么做。
感谢您的帮助。
编辑原始代码
App.svelte
<script>
import Component from "./Component.svelte";
let object = {name: "project"};
</script>
<h1>Main</h1>
<input type="text" bind:value={object.name} />
<hr>
<Component bind:object={object} />
Component.svelte
<script>
export let object;
//$: tempObject = object;
$: tempObject ={...object};
</script>
<h1>Component</h1>
<input type="text" bind:value={tempObject.name} />
<button type="button" on:click={() => object = tempObject}>Save</button>