ビュー
関数
createActionJob

createActionJob

createActionJob は、アクションをジョブとして実行する関数です。

基本的な使い方

import {
  createActionJob,
  showSuccessToast,
  showErrorToast,
  Form,
  VStack,
  Box,
  TextInput,
  Checkbox,
  DateTimePicker,
  Button,
} from "@basemachina/view";
 
const App = () => {
  const initialValues = {
    // アクションの引数
    message: "",
    // 以下、createActionJob関数のオプション
    scheduledAt: null,
    redirect: true,
  };
 
  const handleSubmit = async ({ values }) => {
    const { message, redirect, scheduledAt } = values;
    try {
      const { actionJobId } = await createActionJob(
        // actionId
        "job-test",
        // args
        { message },
        // options
        { redirect, scheduledAt },
      );
      showSuccessToast(`ジョブ: ${actionJobId} を作成しました`);
    } catch (err) {
      showErrorToast(err.message);
    }
  };
 
  return (
    <Form initialValues={initialValues} onSubmit={handleSubmit}>
      <VStack>
        <Box>
          <TextInput name="message" label="メッセージ" />
        </Box>
        <Box>
          <DateTimePicker name="scheduledAt" label="予約実行日時" />
        </Box>
        <Checkbox name="redirect" label="自動でジョブ詳細に遷移する" />
        <Button type="submit" title="ジョブを作成する" color="blue" />
      </VStack>
    </Form>
  );
};
 
export default App;

詳細なインターフェース

引数

引数名必須 ・ 任意説明
actionIdstring必須実行するアクションのID、または識別子。'c3hc2ii23akg0sokf9j0', 'get-user'
argsobject任意アクションを実行するための引数で、 キーがパラメータ名、値がパラメータに渡す値のオブジェクト。{ username: 'JohnDoe' }
optionsobject任意ジョブの詳細設定。{ scheduledAt: 1609459200 }
options.scheduledAtDate | string | number任意ジョブの予約実行日時。stringDate型に変換できる値、numberはUnixTimestamp (秒)を入力してください。時間は過去に設定できません。new Date(), '2023-01-01', 1609459200
options.redirectboolean任意ジョブの作成後に、自動的にジョブ詳細画面へ移動する設定。true, false

なおパラメータの入力値の種類ごとにargsへ渡せる値の型は以下です。

入力値の種類説明
テキストstring-{ company_name: '株式会社ベースマキナ' }
数値number-{ user_id: 123 }
日付Date | string | numberstringDate型に変換できる値、numberはUnixTimestamp (秒)を入力してください。{ created: '2023-01-01', updated: new Date(), deleted: 1609459200 }
ファイルFile-{ upload_text: new File(['test'], 'test.txt', { type: 'text/plain' }) }
真偽値boolean-{ checked: true }
JSON値string | number | Date | nullJSON値の種類ごとに型が異なります。
テキストならstring | null、数値ならnumber | null、日付ならstring | number | Date | nullを渡せます。
日付の場合stringDate型に変換できる値、numberはUnixTimestamp (秒)を入力してください。 
{ company_name: '株式会社ベースマキナ', user_id: 123, created: '2023-01-01', deleted: null }
SQLstring-{ query: 'SELECT * FROM users;' }
システム値string-{ offset: '20' }
配列Array各要素の種類の型は、各入力値の種類の型と同じです。{ user_ids: [10, 11, 12] }

戻り値

プロパティ名説明
actionJobIdstring作成したジョブのID。cpt8gkab5gv1ibk8r5h0