LoginSignup
3
3

More than 1 year has passed since last update.

Vite×Vue3×Typescriptで最新の環境構築する

Posted at

Vite(ヴィート)とは

従来のビルドツールであるVue CLI等に比べて高速で動作するビルドツールのこと。
フランス語で速くという意味らしい。
公式サイト↓

環境構築 Vite×Vue3×Typescript

1.npmのVersionを確認する(6系とそれ以降でその後のコマンドが変わる)
$ npm -v

8.12
2.プロジェクトの作成
# npm 6.x
$ npm init vite@latest <ここにプロジェクト名> --template vue-ts

# npm 7+ は追加で 2 つのダッシュが必要:
npm init vite@latest <ここにプロジェクト名> -- --template vue-ts

上記は公式サイトに記述されていた

スクリーンショット 2022-01-19 13.02.06.png

vueの後に-tsを付けることでTypescriptを導入することができる。

コマンド入力後の結果は以下の通り

Scaffolding project in (中略)

Done. Now run:

  cd <自分が指定したプロジェクト名>
  npm install
  npm run dev

3.開発に必要なライブラリのインストールをする
# 生成された Vue プロジェクトフォルダに移動する
$ cd <自分が指定したプロジェクト>

# 開発に必要なライブラリ群をインストールする
# ライブラリ群の情報は package.json に記載あり
$ npm install

めちゃくちゃ一瞬でインストールされた!!!Vue-cliを使用した場合はかなり時間がかかった印象がある。あちらはESLintやPrettierやVue Router Vue storeがオプションで使用するのを選べるメリットはあるが....

3.サーバーを立ち上げる
$ npm run dev

  vite v2.5.8 dev server running at:

  > Local: http://localhost:3000/
  > Network: use `--host` to expose

  ready in 419ms.

スクリーンショット 2022-01-19 11.36.07.png

推奨IDEを揃える

以前まではvscodeの拡張機能としてVeturを使っていたが、Volarが推奨のようなので、Vscodeに行き拡張機能をインストールした。それに伴って使っていたVeturは無効にした.

4. 生成されたCodeを確認する
<script setup lang="ts">
// This starter template is using Vue 3 <script setup> SFCs
// Check out https://v3.vuejs.org/api/sfc-script-setup.html#sfc-script-setup
import HelloWorld from "./components/HelloWorld.vue";
</script>

<template>
  <img alt="Vue logo" src="./assets/logo.png" />
  <HelloWorld msg="Hello Vue 3 + TypeScript + Vite" />
</template>

<style>
#app {
  font-family: Avenir, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-align: center;
  color: #2c3e50;
  margin-top: 60px;
}
</style>
<script setup lang="ts">
import { ref } from 'vue'

defineProps<{ msg: string }>()

const count = ref(0)
</script>

<template>
  <h1>{{ msg }}</h1>

  <p>
    Recommended IDE setup:
    <a href="https://code.visualstudio.com/" target="_blank">VSCode</a>
    +
    <a href="https://github.com/johnsoncodehk/volar" target="_blank">Volar</a>
  </p>

  <p>See <code>README.md</code> for more information.</p>

  <p>
    <a href="https://vitejs.dev/guide/features.html" target="_blank">
      Vite Docs
    </a>
    |
    <a href="https://v3.vuejs.org/" target="_blank">Vue 3 Docs</a>
  </p>

  <button type="button" @click="count++">count is: {{ count }}</button>
  <p>
    Edit
    <code>components/HelloWorld.vue</code> to test hot module replacement.
  </p>
</template>

<style scoped>
a {
  color: #42b983;
}

label {
  margin: 0 0.5em;
  font-weight: bold;
}

code {
  background-color: #eee;
  padding: 2px 4px;
  border-radius: 4px;
  color: #304455;
}
</style>

デフォルトで気になっていたscript setupの記法で書かれていた!!

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3