我正在尽我所能理解使用 Svelte 3 创建类似发票的表单的惯用方式。
我的REPL在这里:https ://svelte.dev/repl/7aca36569aea49bba38e5fb8b1b0835b?version=3.24.1 。
问题:
这是一个好方法吗?我应该使用商店吗?
qty
当我改变我的行时,有没有办法更新 amountDueprice
?(我知道我可以做到,rows = rows
但在我看来这有点不习惯,我错了吗?)
我正在尽我所能理解使用 Svelte 3 创建类似发票的表单的惯用方式。
我的REPL在这里:https ://svelte.dev/repl/7aca36569aea49bba38e5fb8b1b0835b?version=3.24.1 。
问题:
这是一个好方法吗?我应该使用商店吗?
qty
当我改变我的行时,有没有办法更新 amountDue price
?(我知道我可以做到,rows = rows
但在我看来这有点不习惯,我错了吗?)
如果您需要更完整的答案:
row
值绑定到 Row 的row
道具。您可以将快捷方式bind:row
用作 的别名bind:row={row}
。amountDue
总价的逻辑似乎有缺陷,因为它忽略了计算总价的行数。这是一个具有所需行为的有效 REPL:https ://svelte.dev/repl/78fa09646005441a85061e6edf9886f9?version=3.24.1
我认为您不需要使用商店(可能对大型组件树有用)
对于第二个问题,你只需要做一个组件绑定
https://svelte.dev/tutorial/component-bindings
{#each rows as row}
<Row bind:row />
{:else}
Still no rows.
{/each}
注意我们如何使用 bind 关键字而不是仅仅传递 prop