Gatsby 이미지로 Medium의 이미지 미리보기 구현
2757 단어 csscodenewbiegatsbybeginners
목표
Medium에서 "이미지 미리보기"줌 기능을 본 적이 있습니까? 이를 통해 사용자는 전체 이미지의 라이트박스 버전을 볼 수 있으며 전체 이미지를 보는 동안 허용되는 크기만큼 큰 이미지로 브라우저를 채울 수 있습니다.
이 이미지 확대/축소 기능을 복제하는 여러 React 라이브러리가 있지만 가장 많은 사용자와 가장 큰 지원 커뮤니티가 있는 것으로 보이는 것은 react-medium-image-zoom 라이브러리(Robert Pierce가 구축)입니다.
문제
React Medium Image Zoom을 사용하는 단계는 매우 간단합니다. 라이브러리를 React 프로젝트(
npm i react-medium-image-zoom
)에 추가하여 시작한 다음 Zoom을 원하는 구성 요소로 가져오고 이미지를 래핑합니다.예시:
import React from 'react'
import Zoom from 'react-medium-image-zoom'
import 'react-medium-image-zoom/dist/styles.css'
const MyComponent = () => (
<Zoom>
<img src="../images/example.jpg" width="500" />
</Zoom>
)
export default MyComponent
그러나 Gatsby와 함께 사용하면 Gatsby 이미지와 함께 줌 기능을 사용하는 문제가 빠르게 분명해집니다. 개츠비 이미지가 더 이상 나타나지 않습니다! 운 좋게도 이것은 CSS 문제일 뿐이며 둘 다의 일부 기본 스타일과 관련이 있습니다.
해결
결국 Gatsby Image와 React Medium Zoom 라이브러리에 미리 구워진 스타일을 디버깅하고 둘 다 함께 일관되게 작동할 수 있도록 수정 사항을 구현하는 것입니다.
필수 CSS
// Set Gatsby Image className to 100% width and height
gatsbyImage {
width: '100%',
height: '100%'
}
// React Medium Image Zoom styling update to work with Gatsby Images
[data-rmiz-wrap='visible'], [data-rmiz-wrap='hidden'] {
width: 100%;
height: 100%;
display: block;
}
결론
미디엄에서 볼 수 있는 이미지 줌 기능을 구현하는 것은 간단하고 많은 프로젝트에서 사용자 경험을 향상시키는 좋은 방법입니다. Gatsby 이미지로 이 기능을 구현하려고 하는 일부 사용자에게 도움이 되기를 바랍니다. 수정하는 것이 생각보다 훨씬 간단하지만 수행해야 할 작업을 파악하는 데 시간이 걸렸습니다.
추가 리소스
Mikal Mantis's one-component solution to the React Medium Image Zoom with Gatsby Image issue
Reference
이 문제에 관하여(Gatsby 이미지로 Medium의 이미지 미리보기 구현), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/lukekyl/implementing-medium-s-image-preview-with-gatsby-images-f5b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)