설치
Ember.js에서 Tailwind CSS 설치
Ember.js 프로젝트에서 Tailwind CSS 설정하기.
프로젝트 생성
아직 프로젝트를 설정하지 않았다면, 새로운 Ember.js 프로젝트를 생성하세요. 가장 일반적인 방법은 Ember CLI를 사용하는 것입니다.
터미널npx ember-cli new my-project --embroider --no-welcomecd my-project
Tailwind CSS 설치
npm을 사용하여
tailwindcss
와 그 의존성, 그리고postcss-loader
를 설치한 후,init
명령어를 실행하여tailwind.config.js
와postcss.config.js
를 생성하세요.터미널npm install -D tailwindcss postcss postcss-loader autoprefixernpx tailwindcss init -p
PostCSS 지원 활성화
ember-cli-build.js
파일에서 PostCSS를 설정하여 CSS 파일을 처리하세요.ember-cli-build.js'use strict'; const EmberApp = require('ember-cli/lib/broccoli/ember-app'); module.exports = function (defaults) { const app = new EmberApp(defaults, { // 옵션 추가 }); const { Webpack } = require('@embroider/webpack'); return require('@embroider/compat').compatBuild(app, Webpack, { skipBabel: [ { package: 'qunit', }, ], packagerOptions: { webpackConfig: { module: { rules: [ { test: /\.css$/i, use: [ { loader: 'postcss-loader', options: { postcssOptions: { config: 'postcss.config.js', }, }, }, ], }, ], }, }, }, }); };
템플릿 경로 설정
tailwind.config.js
파일에 모든 템플릿 파일의 경로를 추가하세요.tailwind.config.js/** @type {import('tailwindcss').Config} */ module.exports = { content: ['./app/**/*.{gjs,gts,hbs,html,js,ts}'], theme: { extend: {}, }, plugins: [], };
Tailwind 지시어 추가
./app/app.css
파일을 생성하고 Tailwind의 각 레이어에 대한@tailwind
지시어를 추가하세요.app.css@tailwind base; @tailwind components; @tailwind utilities;
CSS 파일 임포트
새로 생성된
./app/app.css
파일을./app/app.js
파일에 임포트하세요.app.jsimport Application from '@ember/application'; import Resolver from 'ember-resolver'; import loadInitializers from 'ember-load-initializers'; import config from 'my-project/config/environment'; import 'my-project/app.css'; export default class App extends Application { modulePrefix = config.modulePrefix; podModulePrefix = config.podModulePrefix; Resolver = Resolver; } loadInitializers(App, config.modulePrefix);
빌드 프로세스 시작
npm run start
로 빌드 프로세스를 실행하세요.터미널npm run start
프로젝트에서 Tailwind 사용 시작
Tailwind의 유틸리티 클래스를 사용하여 콘텐츠를 스타일링하세요.
application.hbs{{page-title "MyProject"}} <h1 class="text-3xl font-bold underline"> Hello world! </h1> {{outlet}}