我有以下增强的 SvelteKit 表单:
<script>
import { enhance } from '$app/forms';
</script>
<form method="POST" use:enhance>
<input name="name" />
</form>
Run Code Online (Sandbox Code Playgroud)
成功提交后,表单将被重置。有什么办法可以避免这种情况吗?
Tho*_*lle 10
enhance您可以通过提供一个 来进一步自定义操作的行为submit function。该函数又可以返回一个回调,该回调在提交表单时调用。
此回调的第一个参数中的属性update是一个函数,如果未设置此回调,将触发将触发的逻辑,并且它采用一个选项reset,允许您在成功提交后不重置表单。
<script>
import { enhance } from '$app/forms';
function handleSubmit() {
// ...
return async ({ update }) => {
await update({ reset: false });
};
}
</script>
<form method="POST" use:enhance={handleSubmit}>
<input name="name" />
</form>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1122 次 |
| 最近记录: |