1. sass, sass-loader 설치하기
터미널에서 아래 명령어를 실행한다.
package.json 파일에서 설치된 버전을 확인할 수 있다.
yarn add sass sass-loader
또는
npm install sass sass-loader
2. style 작성하기
- pages/index.vue
sass/scss를 적용하고 싶은 .vue 파일에서 <script> 태그 아래에 <style> 태그를 작성한다.
<template>
<TheLayout>
<h1>메인 페이지</h1>
</TheLayout>
</template>
<script>
import TheLayout from "@/components/layout/TheLayout"
export default {
name: 'Main',
components: {
TheLayout
}
}
</script>
<style lang="scss" scoped>
h1 {
color: blue
}
</style>
3. scss 적용이 안됐을 경우
버전 차이로 인해 sass-loader가 작동을 안 할 때가 있다.
sass-loader를 삭제 후, 버전 10을 설치한다.
// 삭제하기
yarn remove sass-loader
// 버전 10 설치하기
yarn add sass-loader@10
4. reset.scss 등 전역 scss 적용하기
- static/css/common.scss
reset, font, layout 등 공통으로 적용하고 싶은 scss 파일이 있다면 매번 스타일을 작성하거나 import 시키는 것보다 전역에서 적용하는 것이 효율적이다.
위의 경로에 common.scss 파일을 만들고, 공통으로 적용하고 싶은 scss 파일을 import 시킨다.
// base
@import './base/reset';
@import './base/font';
// common
@import './common/layout';
@import './common/transition';
...
5. nuxt.config.js
nuxt.config.js 파일을 열고, css 부분에 common.scss 파일을 작성한다.
common.scss에 import 시켜둔 모든 scss 파일이 전역에서 적용된 것을 확인할 수 있다.
export default {
...
// Global CSS: https://go.nuxtjs.dev/config-css
css: [
'@/static/css/common.scss'
],
...
}
6. 결과 화면
'Vue, Nuxt > 문법' 카테고리의 다른 글
[Vue/Nuxt] 뷰 v-if, v-else를 사용해 리스트 있고 없을 때 다르게 렌더링하기 (0) | 2023.10.26 |
---|---|
[Vue/Nuxt] 뷰 v-for, 반복문을 이용해 배열 리스트 렌더링하기 (0) | 2023.10.25 |
[Vue/Nuxt] 뷰 props, emit으로 컴포넌트 간에 값 전달하기 (BaseButton 만들기) (0) | 2023.10.25 |
[Vue/Nuxt] 뷰 레이아웃 컴포넌트 만들기 (slot) (0) | 2023.10.13 |
[Vue/Nuxt] Nuxt.js 설치 및 프로젝트 생성하기 (0) | 2023.10.13 |