일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- EER
- 동읍면 DB
- DBMS
- 정보보호병 후기
- spring
- 행정지역 DB
- Layered Architecture
- reversing.kr
- 소프트웨어 개발보안 경진대회
- PyAmdecoder
- Database
- restapi
- mysql
- 메모리 포랜식
- 소개딩
- JSTL
- Django
- frontend
- 인턴 후기
- 방명록 만들기
- 3단계 지역 DB
- react
- 인턴 지원
- ㅁㅇㅂ??ㅇㅈㄷ ㅎㅇㅌ...
- Forensic 절차
- jsp
- riceteacatpanda
- 네이버 인턴
- webhacking 처음
- SessionAttribute
- Today
- Total
웹찢남
REACT 8일차 (material design) 본문
CSS 또는 scss 이용하여 머티리얼 디자인 적용하기
1. CDN방식으로 머티리얼 디자인 적용하기
머티리얼 디자인: 구글에서 공개한 디자인 가이드
CDN은 특정 파일을 전세계에 분산,복사하여 가장 근접한 곳에서
빠르게 내려받을 수 있도록 파일을 제공하는 방법이다.
리액트 서버에 파일을 추가하지 않고 직접 이용할 경우 이 방법을 이용한다.
public내의 index.html 에 아래의 코드를 추가하면 된다.
<link
rel="stylesheet"
href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css"
/>
2.App 컴포넌트에 머티리얼 디자인 적용하기
<div>
<nav>
<div className="nav-wrapper">
<div>harry595의 티스토리</div>
</div>
</nav>
<h1>REACT !!! </h1>
</div>
위와 같이 코드를 삽입하면 아래와 같은 결과를 얻을 수 있다.
3. 파일 방식으로 머티리얼 디자인 적용하기
해당 사이트의 materialize.zip을 다운 후 압축 폴더내의 materialize.css 파일을
복사한 후 src 폴더에 집어넣은 후 아래와 같이 코드를 추가하면 된다.
import './materialize.css';
5.scss로 스타일 모듈화 하여 머티리얼 디자인 적용하기
sass/components의 _varialbes.scss 파일의 1.Color의 요소를 바꾸면 색이 바뀐다.
------------------------------------------------------------
컴포넌트에 머티리얼 디자인 적용해 보기
1. 04폴더에 전에 했던 Input.jsx를 추가한 후 아래와 같이 코드를 수정, 추가한다.
<div className="input-field"> => 머티리얼 css의 입력항목 스타일 추가
<label htmlFor={`input_${name}`}> => 라벨의 마우스 클릭 시 마우스 커서가 입력 항목 이동
{errorMessage && <span className="error">{errorMessage}</span>} => 입력설명 항목 스타일 추가
2. 전처럼 stories 폴더에 위의 코드를 import 하는 Input.jsx를 생성
-> 하지만 storybook이 바뀌지 않음
-> sass-loader을 프로젝트에 추가해야함
yarn add --dev sass-loader
3. 스토리북에 sass-loader설정
.stroybook 폴더에 webpack.config.js 파일 생성 아래와 같이 작성
const path = require("path");
module.exports = {
module: {
rules: [
{
test: /\.scss$/, => scss파일만 적용하도록 규칙 추가
loader: ["sass-loader"], => sass구문을 css로 변환
include: path.resolve(__dirname, "../"),
},
],
},
};
4. config.js에 materialize.css 임포트
import "../src/sass/materialize.scss";
그 후 스토리를 재가동하면 달라진 UI를 볼 수 있음
'FRONT_END > REACT 공부' 카테고리의 다른 글
REACT 10일차 (하이어오더 컴포넌트) (0) | 2020.07.09 |
---|---|
REACT 9일차 (Style component) (0) | 2020.07.07 |
REACT 7일차 (스토리 북) (0) | 2020.05.22 |
REACT 6일차 (리액트 컴포넌트-3) (0) | 2020.05.20 |
REACT 5일차 (리액트 컴포넌트-2) (0) | 2020.05.19 |