0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

はじめての記事投稿
Qiita Engineer Festa20242024年7月17日まで開催中!

Quasar プロジェクトに Tailwind CSS をセットアップする

Last updated at Posted at 2024-07-09

Quasar Framework をプライベートで利用することが多くなり,Tailwind CSS を導入しようとする度に検索しているので一連の作業を残しておきます.

環境

  • Node.js: 22.4.0
  • @quasar/cli: 2.4.1
  • @quasar/app-vite 1.9.3

Quasar プロジェクトの作成

Quasar Framework の HP 通りにインストールします.

shell
npm init quasar

プロジェクトの設定は以下の通りです.

  • App with Quasar CLI
  • Quasar v2 (Vue 3)
  • TypeScript
  • Quasar App CLI with Vite 2
  • Composition API with
  • Sass with SCSS syntax
  • features:
    • Linting (vite-plugin-checker + ESLint + vue-tsc)
    • State Management (Pinia)
    • axios
    • vue-i18n

Tailwind CSS の導入

基本的に Tailwind CSS のこちらのページを参考にしています.

shell
npm install -D tailwindcss
npx tailwindcss init

# 必要に応じて
npm install -D \
  @tailwindcss/typography@latest \
  @tailwindcss/forms@latest \
  @tailwindcss/aspect-ratio@latest \
  @tailwindcss/line-clamp@latest \
  @heroicons/vue

tailwind.config.js が生成されますので,エディタで開いて編集します.

tailwind.config.js
/** @type {import('tailwindcss').Config} */
- module.exports = {
-   content: [],
-   theme: {
-     extend: {},
-   },
-   plugins: [],
- }
+ export const content = ['./index.html', './src/**/*.{js,ts,jsx,tsx,vue}'];
+ export const theme = {
+     extend: {},
+ };
+ export const plugins = [];

CommonJS module から ES module に変換し,Vue・TypeScript のプロジェクト用にセットアップしました.

次に,app.css に Tailwind CSS のユーティリティクラスをインポートします.

src/css/app.scss
  // app global css in SCSS form
+ @import 'tailwindcss/base';
+ @import 'tailwindcss/components';
+ @import 'tailwindcss/utilities';

最後に,postcss.config.cjs を編集し tailwindcss プラグインを取り込みます.

postcss.config.cjs
  /* eslint-disable */
  // https://github.com/michael-ciniawsky/postcss-load-config

  module.exports = {
    plugins: [
+     require('tailwindcss'),
      // https://github.com/postcss/autoprefixer
      require('autoprefixer')({
        overrideBrowserslist: [
          'last 4 Chrome versions',
          'last 4 Firefox versions',
          'last 4 Edge versions',
          'last 4 Safari versions',
          'last 4 Android versions',
          'last 4 ChromeAndroid versions',
          'last 4 FirefoxAndroid versions',
          'last 4 iOS versions',
        ],
      }),

      // https://github.com/elchininet/postcss-rtlcss
      // If you want to support RTL css, then
      // 1. yarn/npm install postcss-rtlcss
      // 2. optionally set quasar.config.js > framework > lang to an RTL language
      // 3. uncomment the following line:
      // require('postcss-rtlcss')
    ],
  };

導入作業は以上です!

動作確認

Tailwind CSS UI が提供している Pricing Section の Vue 用コードを ExampleComponent.vue に貼り付けて動作確認してみました.

tailwindcss-test.png

ちゃんと動作していますね!

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?