스타일이 지정된 구성 요소 학습을 시작하세요!(3)-원하는 모든 구성 요소에 스타일을 지정할 수 있습니다!
                                            
                                                
                                                
                                                
                                                
                                                
                                                 6565 단어  react
                    
안녕하세요 여러분 클락입니다! 이 게시물에서는 더 많은 스타일 구성 요소에 대해 계속 공유하고 연습할 것입니다!
구성 요소 스타일 지정
styled component 문서에서 이 부분을 읽을 때 styled component가 저에게 매우 강력하다고 생각합니다. 스타일이 적용된 구성 요소에 대해 이전에 공유한 게시물에서 우리 모두는 styled가 원하는 스타일로 구성 요소를 생성할 수 있고 이를 사용하거나 확장할 수 있다는 것을 알고 있습니다.
이 장에서는 HTML 태그 대신 기존 구성 요소의 스타일을 지정하는 방법을 배웁니다!
 react-router-dom 설치
구성 요소 스타일링을 연습하려면 다른 요소 UI 프레임워크에서 제공하는 구성 요소를 사용해야 합니다.
따라서 먼저 우리 프로젝트에서 react-router-dom을 사용해야 합니다(이것이 일반적인 것이라고 생각합니다). 제공되는 bu react-router-dom은 완벽한 구성 요소이므로 styled 구성 요소를 통해 스타일링을 시도할 수 있습니다.
 npm i react-router-dom
 기존 구성 요소 스타일 지정
이전 단계를 마치면 react-router-dom에서 Link를 가져올 수 있습니다.
 import React from 'react';
import { HashRouter, Link } from 'react-router-dom';
const App = () => (
  <HashRouter>
    <Link>I am a link</Link>
  </HashRouter>
);
export default App;
그럼... 인라인 스타일로 작성해야 할까요? 아래 링크 코드:
 const App = () => (
  <HashRouter>
    <!--inline style-->
    <Link style={{ textDecoration: 'none' }}>
      I am a link
    </Link>
  </HashRouter>
);
 아니!
의 Link 구성 요소를 통해 Link를 래핑할 수 있습니다. 포장 방법은 동일합니다. Button에 styled 매개변수를 지정하면 됩니다. 코드 스니펫은 인라인 스타일과 스타일이 지정된 구성 요소를 통해 다른 점을 보여줍니다.
 import React from 'react';
import { HashRouter, Link } from 'react-router-dom';
import styled from 'styled-components';
const NoneDecorationLink = styled(Link)`
  text-decoration: none;
`;
const App = () => (
  <HashRouter>
    <!--inline style-->
    <Link style={{ textDecoration: 'none' }}>
      I am a link
    </Link>
    <br />
    <!--styled component-->
    <NoneDecorationLink>
      I am a style link
    </NoneDecorationLink>
  </HashRouter>
);
export default App;
스타일이 지정된 구성 요소가 인라인 스타일보다 명확하다고 생각하지만 결과는 동일합니다.
 
 결론
따라서 스타일이 지정된 구성 요소를 사용하면 다른 요소 UI 프레임워크에서 제공하는 구성 요소를 확장하는 방법을 고려할 필요가 없습니다!
                
                    
        
    
    
    
    
    
                
                
                
                
                    
                        
                            
                            
                            Reference
                            
                            이 문제에 관하여(스타일이 지정된 구성 요소 학습을 시작하세요!(3)-원하는 모든 구성 요소에 스타일을 지정할 수 있습니다!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
                                
                                https://dev.to/ms314006/start-learn-styled-components-3-you-can-styling-any-component-you-want-97g
                            
                            
                            
                                텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                            
                            
                                
                                
                                 우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)
                            
                            
                        
                    
                
                
                
            
npm i react-router-dom
import React from 'react';
import { HashRouter, Link } from 'react-router-dom';
const App = () => (
  <HashRouter>
    <Link>I am a link</Link>
  </HashRouter>
);
export default App;
const App = () => (
  <HashRouter>
    <!--inline style-->
    <Link style={{ textDecoration: 'none' }}>
      I am a link
    </Link>
  </HashRouter>
);
import React from 'react';
import { HashRouter, Link } from 'react-router-dom';
import styled from 'styled-components';
const NoneDecorationLink = styled(Link)`
  text-decoration: none;
`;
const App = () => (
  <HashRouter>
    <!--inline style-->
    <Link style={{ textDecoration: 'none' }}>
      I am a link
    </Link>
    <br />
    <!--styled component-->
    <NoneDecorationLink>
      I am a style link
    </NoneDecorationLink>
  </HashRouter>
);
export default App;
따라서 스타일이 지정된 구성 요소를 사용하면 다른 요소 UI 프레임워크에서 제공하는 구성 요소를 확장하는 방법을 고려할 필요가 없습니다!
Reference
이 문제에 관하여(스타일이 지정된 구성 요소 학습을 시작하세요!(3)-원하는 모든 구성 요소에 스타일을 지정할 수 있습니다!), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ms314006/start-learn-styled-components-3-you-can-styling-any-component-you-want-97g텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
                                
                                
                                
                                
                                
                                우수한 개발자 콘텐츠 발견에 전념
                                (Collection and Share based on the CC Protocol.)