主分支
分支
main (6.23.1)dev
版本
6.23.1v4/5.xv3.x
useFormAction

useFormAction

类型声明
declare function useFormAction(
  action?: string,
  { relative }: { relative?: RelativeRoutingType } = {}
): string;

此钩子在 <Form> 中内部使用,以自动将默认和相对操作解析为上下文中的当前路由。虽然不常见,但您可以直接使用它来执行诸如计算 <button formAction> 的正确操作以更改按钮的 <Form> 的操作。 (是的,HTML 按钮可以更改其表单的操作!)

import { useFormAction } from "react-router-dom";

function DeleteButton() {
  return (
    <button
      formAction={useFormAction("destroy")}
      formMethod="post"
    >
      Delete
    </button>
  );
}

它也适用于自动解析 submitfetcher.submit 的操作。

let submit = useSubmit();
let action = useFormAction();
submit(formData, { action });
文档和示例 CC 4.0