Vue.jsに触れよう5

公開日: 2025/1/15

お疲れ様です。

今回は、Vue.jsで簡易的な家計簿アプリのようなものを作りました。

本記事では、家計簿アプリの詳細と、コードの説明をしていきます。

1. 作成したアプリの動作

以下が作成した家計簿アプリです。


収入の状態で金額、内訳を入力し、追加ボタンを押すと以下の履歴に表示され、合計欄に反映されます。


支出に変更して追加ボタンを押しても同じように反映されます。


削除ボタンを押すと履歴を削除することができます。

OSはWindows、エディタはメモ帳(htmlファイルで保存)、使用言語はJavaScript、フレームワークはVue.jsです。

以上が作成したアプリの概要です。

2. 記述したコード

実際に記述したコードは以下の通りになります。

kakeibo.html

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>家計簿支出アプリ</title>
  <script src="https://cdn.jsdelivr.net/npm/vue@2"></script>
</head>
<body>

<div id="app">
  <h1>家計簿アプリ</h1>

  <!-- 収入と支出の入力フォーム -->
  <div>
    <label for="type">収支:</label>
    <select v-model="type">
      <option value="収入">収入:</option>
      <option value="支出">支出:</option>
    </select>
    <label for="amount">金額:</label>
    <input type="number" v-model="amount">
    <label for="description">内訳:</label>
    <input type="text" v-model="description">
    <button @click="addTransaction">追加</button>
  </div>

  <!-- 収支のリスト -->
  <div>
    <h2>履歴</h2>
    <ul>
      <li v-for="(transaction, index) in transactions" :key="index">
        {{ transaction.type }} - {{ transaction.amount }} - {{ transaction.description }}
        <button @click="removeTransaction(index)">削除</button>
      </li>
    </ul>
  </div>

  <!-- 合計金額の表示 -->
  <div>
    <h2>合計</h2>
    <p>合計収入:{{ totalIncome }}</p>
    <p>合計支出:{{ totalExpense }}</p>
&n

3. まとめ

いかがでしたでしょうか。

本記事では、メモ帳を用いて簡単なアプリを作りました。

このように、特別に何かを用意しなくてもVue.jsを使用することができました。

しかし、家計簿アプリですが、このままだとファイルを開いているだけで、入力したデータを保存しておくことができません。


今後家計簿アプリを作る際は、データを保管できたらいいなと思っています。

また、おいおいUIをきれいなものにしていきたいと思います。

読んでくださり、ありがとうございました。