# カレンダーの予定作成機能4

次にエラーハンドリングを行いましょう。

予定のタイトルがない場合にエラーメッセージを表示し、予定を作成できないようにいます。

`errorMessage`というstateを定義しましょう。

&#x20;そしてhandleCreateScheduleの中で、`title`がない場合に`errorMessage`をセットして`return`にて処理が中断するようにします。`title`がある場合は`errorMessage`を空にします。

<pre class="language-tsx" data-title="organisms/CreateScheduleModal.tsx◎"><code class="lang-tsx">...
export const CreateScheduleModal = ({
  isOpen,
  closeModal,
  addSchedule,
}: PropsType) => {
  const [newSchedule, setNewSchedule] = useState&#x3C;NewSchedule>({
    title: "",
    date: format(new Date(), "yyyy-MM-dd"),
    description: "",
  })
<strong>  const [errorMessage, setErrorMessage] = useState("")
</strong><strong>
</strong><strong>
</strong>  const handleCreateSchedule = (event: FormEvent&#x3C;HTMLFormElement>) => {
    event.preventDefault();
    const { title, date, description } = newSchedule;
<strong>    if (title === "") {
</strong><strong>      setErrorMessage("タイトルを入力してください")
</strong><strong>      return
</strong><strong>    } else {
</strong><strong>      setErrorMessage("");
</strong><strong>    }
</strong>    const schedule: Schedule = {
      id: 100001,
      title,
      date: parse(date, "yyyy-MM-dd", new Date),
      description: description,
    }
    addSchedule(schedule)
    setNewSchedule({
      title: "",
      date: format(new Date(), "yyyy-MM-dd"),
      description: "",
    })
    closeModal()
  };
...
</code></pre>

ではerrorMessageを表示するようにしましょう。

<pre class="language-tsx" data-title="organisms/CreateScheduleModal.tsx◎"><code class="lang-tsx">...
        &#x3C;h3 className="text-center text-3xl text-lime-800 font-bold pb-5">
          予定作成
        &#x3C;/h3>
<strong>        {errorMessage !== "" &#x26;&#x26; (
</strong><strong>          &#x3C;div className="p-5 mb-5 bg-red-500 text-white text-center rounded-lg">
</strong><strong>            {errorMessage}
</strong><strong>          &#x3C;/div>
</strong><strong>        )}
</strong>...
</code></pre>

こちらでブラウザにて確認すると、タイトルを入力しない状態でボタンを押した際にエラーメッセージが表示されるかと思います。

<figure><img src="https://1869761657-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FcUBbYqol4PMzZJggiMqV%2Fuploads%2FcbofgYnolVUBrIVPJSAK%2F9a.png?alt=media&#x26;token=dcccb1c6-2acd-4915-a2a2-75290647809d" alt=""><figcaption></figcaption></figure>

ここまでの作業をcommitしましょう。

```bash
git add .
```

```bash
git commit
```

commitメッセージは

```
feat: カレンダーフォームにてエラーハンドリングを追加
```

としましょう。
