반응형
모든 파일에 적용할때 손쉽게 사용할 수 있음
index.tsx(or App.tsx에도 가능)
const theme: any = {
primaryColor: ['#a559f3', '#c282ef'],
subColor: ['#8178f9', '#a680fb'],
};
// GlobalStyle의 경우 컴포넌트 가장 상단에 위치해야 적용됨
ReactDOM.render(
<Provider store={store}>
<SdkProvider>
<ThemeProvider theme={theme}>
<GlobalStyle />
<BrowserRouter>
<App />
</BrowserRouter>
</ThemeProvider>
</SdkProvider>
</Provider>,
document.getElementById('root'),
);
main.tsx
props로 가져와서 사용한다.
const MainWrap = styled.div<{ heightItem: string; widthItem: string }>`
background-image: linear-gradient(
to top,
${(props: any) => props.theme.primaryColor[0]},
${(props: any) => props.theme.primaryColor[1]}
);
width: 100%;
height: 100%;
font-family: RixHeadM, sans-serif;
overflow: hidden;
font-size: 21px;
transition: background 1s ease-out;
&.hidden {
visibility: hidden;
}
`;
반응형
'개발(라이브러리,프레임워크) > react.js & react native' 카테고리의 다른 글
react-query (0) | 2022.06.12 |
---|---|
react-transition-group (0) | 2022.06.08 |
memoization (0) | 2022.05.22 |
devServer proxy 설정 (0) | 2022.02.06 |
eject 대신 webpack설치하기 (0) | 2022.02.05 |