주제 선정

Intersection Observer API 옵션

  1. root
  2. rootMargin
  3. threshold

문제 상황

결과

<AlbumList>
  {items.map(item => (
    <Link key={item.ialbum} to={`/album/details/${item.ialbum}`}>
      <ul className="image-grid">
        <li className="image-item">
          <img
            height={400}
            src={`${host}${item.ialbum}/${item.albumPic}`}
            alt={item.albumTitle}
          />
        </li>
        <p>{item.albumTitle}</p>
      </ul>
    </Link>
  ))}
  {loading && <Loading className="loading" />}
  <div ref={loaderRef} />
</AlbumList>
<AlbumList>
  {items.map(item => (
    <Link
      key={item.ialbum}
      to={`/album/details/${item.ialbum}`}
    >
      <ul className="image-grid">
        <li className="image-item">
          <img
            height={400}
            src={`${host}${item.ialbum}/${item.albumPic}`}
            alt={item.albumTitle}
          />
        </li>
        <p>{item.albumTitle}</p>
      </ul>
    </Link>
  ))}
  {loading && <Loading className="loading" />}
  <div ref={loaderRef} style={{ height: "100px", margin: "20px" }}></div>
</AlbumList>