BLOG

【動画】Vue.jsを使ってWEBアプリ開発入門!時計アプリを作ろう/前編

2022-04-08


Vue.js入門動画、第2回今回の完成目標はアラームが設定できる時計アプリを作っちゃいます!
完成イメージ


今回の動画を視聴する前に前回のVue.js環境設定動画をご覧いただくとより理解が深まります。
【第一回】Vue.jsが便利!環境設定と基礎知識解説/WEBアプリを作ろう!

今回の動画を通して学べるのは以下

・コンポーネントの復習
・data( )、computed、mounted( )、methods 等のコードの書き方
・ライフサイクルについて

聞きなれない言葉が並んでて意味分からんって方も動画内でかみ砕いて説明しているので安心してください!
動画を見て真似すれば前回の"Hello World"を表示しているだけの画面から時計を表示することができました!


時間はこの寂しい時計を見本のようにデザインを整えて、アラーム機能をつけます。
是非チャンネル登録よろしくお願いします!
ロックシステムアカデミー!ゆっくりプログラミング学習
大阪福島にあるプログラミングスクール「ロックシステムアカデミー」です!「プログラミング作って実践」をテーマに楽しく分かりやすいアプリ開発のレクチャー動画をアップしていきます! チャンネル登録よろしくお願いします! プログラミングスクール ▼「ロックシステムアカデミー」WEBサイト https://rocksystem.co.jp/academy/
https://www.youtube.com/channel/UC6JxNQ2QTX8Dl96V2MMNP8A

今回使用したソースコードはこちらから!

App.vue
<template>
  <!-- components内で定義したVueファイルを記載 -->
  <Clock />
</template>

<script>
// 使用するVueファイルをインポート
import Clock from "./components/ClockScreen.vue";

// インポートしたVueファイルをcomponents内で定義
export default {
  name: "App",
  components: {
    Clock,
  },
};
</script>

<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #fff;
  margin-top: 60px;
  background-color: #000;
}
</style>
ClockScreen.vue
<template>
  <div class="container">
    <div class="clock">
      <div class="date">
        <p>{{ year }}/{{ month }}/{{ day }}</p>
      </div>
      <div class="time">
        <p>
          {{ hours }}:{{ minutes }}<span class="seconds">:{{ seconds }}</span>
        </p>
      </div>
    </div>
  </div>
</template>

<script>
export default {
  name: "ClockScreen",
  data() {
    return {
      //現在の日時を保持
      date: new Date(),
    };
  },
  computed: {
    //年
    year() {
      return this.date.getFullYear();
    },
    //月
    month() {
      return this.date.getMonth() + 1;
    },
    // 日
    day() {
      return this.dateTimePadding(this.date.getDate());
    },
    // 時
    hours() {
      return this.dateTimePadding(this.date.getHours());
    },
    // 分
    minutes() {
      return this.dateTimePadding(this.date.getMinutes());
    },
    // 秒
    seconds() {
      return this.dateTimePadding(this.date.getSeconds());
    },
  },
  mounted() {
    //現在日時をセット
    this.setDate();

    //1秒ごとにsetDate()を実行
    setInterval(() => this.setDate(), 1000);
  },
  methods: {
    // 日時を二桁に変換
    dateTimePadding(num) {
      return ("0" + num).slice(-2);
    },

    // 現在日時をセット
    setDate() {
      this.date = new Date();
    },
  },
};
</script>

<style></style>

株式会社ロックシステム

「ブラック企業をやっつけろ!!」を企業理念にエンジニアが働きやすい環境をつきつめる大阪のシステム開発会社。2014年会社設立以来、残業時間ほぼゼロを達成し、高い従業員還元率でエンジニアファーストな会社としてIT業界に蔓延るブラックなイメージをホワイトに変えられる起爆剤となるべく日々活動中!絶賛エンジニア募集中。