IntersectionObserver deploy( gatsby build) 시 오류(자답)
387
작성한 질문수 13
useInfiniteScroll.tsx 파일
IntersectionObserver 구문에서 오류 발생
아래 처럼 코드 수정
import { MutableRefObject, useState, useEffect, useRef, useMemo } from 'react'
import { PostListItemType } from 'types/PostItem.types'
export type useInfiniteScrollType = {
containerRef: MutableRefObject<HTMLDivElement | null>
postList: PostListItemType[]
}
const NUMBER_OF_ITEMS_PER_PAGE = 10
const useInfiniteScroll = function (
selectedCategory: string,
posts: PostListItemType[],
): useInfiniteScrollType {
const containerRef: MutableRefObject<HTMLDivElement | null> = useRef<HTMLDivElement>(
null,
)
const [count, setCount] = useState<number>(1)
const postListByCategory = useMemo<PostListItemType[]>(
() =>
posts.filter(({ node: { frontmatter: { categories } } }: PostListItemType) =>
selectedCategory !== 'All'
? categories.includes(selectedCategory)
: true,
),
[selectedCategory],
)
const observer = useRef<IntersectionObserver | null>(null);
useEffect(() => {
observer.current = new IntersectionObserver(
(entries, observer) => {
if (!entries[0].isIntersecting) return;
setCount(value => value + 1);
observer.disconnect();
},
)
}, []);
useEffect(() => setCount(1), [selectedCategory])
useEffect(() => {
if (
NUMBER_OF_ITEMS_PER_PAGE * count >= postListByCategory.length ||
containerRef.current === null ||
containerRef.current.children.length === 0
){
return;
}
if(observer && observer.current){
observer.current.observe(
containerRef.current.children[containerRef.current.children.length - 1],
)
}
}, [count, selectedCategory, observer])
return {
containerRef,
postList: postListByCategory.slice(0, count * NUMBER_OF_ITEMS_PER_PAGE),
}
}
export default useInfiniteScroll
답변 1
쿼리오류 Field "thumbnail" must not have a selection...
1
852
1
타입스크립트를 설정할 때 jsxPragma 옵션을 뺀 이유는 무엇인가요?
1
585
1
마지막 배포 부분 질문드립니다!
1
617
1
'[username]/[username].github.io' -> 'username/reponame'
0
337
0
PostHead.tsx BackgroundImage 동작오류(자답)
1
288
0
19강 인피니티 스크롤 IntersectionObserver 코드 위치 수정이 필요합니다.
1
402
1
썸네일 이미지 제작 및 학습 방법 관련 문의
1
436
1
배포 후 포스트 업로드 방법
1
378
1
배포 질문이요!
1
512
1
gatsby develop 오류
1
931
1
깃허브 레퍼지토리 질문드려요
1
339
1
특정 게시글을 클릭하여 상세 페이지로 넘어가는 과정과 SPA에 관한 질문
1
280
1
Unhandled Runtime Error 가 뜹니다
0
501
2
sign in with GitHub 클릭 시
1
390
3
동작 반복 시 오류
1
349
2
const BackgroundImage 질문
1
209
1
오타 문의
1
299
2
Props로 받아 포스트 데이터 출력하기가 안됩니다.
1
199
1
index.tsx allMarkdownRemark 에러..
0
591
2
스네이크 케이스로 변수명을 짓는 이유
1
248
1
'Tagged Template Literal 방식을 통해 정의한 CSS 적용 방법'에서 발생하는 문제
3
343
2
상단 이미지를 썸네일 사용하지않고 다른 이미지를 쓰고싶습니다
1
279
1
여기까지 했는데 runtime 에러가 발생합니다
2
277
1
index.tsx오류
2
451
1





