@charlietango/use-native-lazy-loading

中文文档
1.10.0发布于 2022/04/15MITTypeScriptESM + CJS零依赖近 30 天下载 7917

检测浏览器是否支持图像元素上的新“ 载入” 属性 .

此软件包已被标记为弃用

No longer supported. Migrate to a new solution for support, or copy the code into the project

中文使用文档
文档目录3 节
  1. 安装
  2. API 密码
  3. 示例

使用 NativeLazy 记录

检测浏览器是否支持新 loading 属性. 把这个和 反应-截面-观测器 以倒置方法懒惰地加载图像.

检查 故事书 演示.

安装

yarn add @charlietango/use-native-lazy-loading

API 密码

const supported = useNativeLazyLoading(initialSupported)

示例

如何将此与 react-intersction-observer,以创建懒惰的加载图像.

import React from 'react'
import useNativeLazyLoading from '@charlietango/use-native-lazy-loading'
import { useInView } from 'react-intersection-observer'

const LazyImage = ({ width, height, src, ...rest }) => {
  const supportsLazyLoading = useNativeLazyLoading()
  const [ref, inView] = useInView({
    triggerOnce: true,
    skip: supportsLazyLoading !== false,
  })

  return (
    <div
      ref={ref}
      style={{
        position: 'relative',
        paddingBottom: `${(height / width) * 100}%`,
        background: '#2a4b7a',
      }}
    >
      {inView || supportsLazyLoading ? (
        <img
          {...rest}
          src={src}
          alt="Placeholder kitten"
          loading="lazy"
          style={{ position: 'absolute', width: '100%', height: '100%' }}
        />
      ) : null}
    </div>
  )
}

export default LazyImage

版本与发布记录

@charlietango/use-native-lazy-loading 共发布 11 个版本,首次发布于 2019/08/07;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.10.0latest2022/04/154 年前
1.9.02020/10/196 年前
1.8.02020/09/236 年前
1.7.12020/06/096 年前
1.7.02019/12/186 年前
1.6.52019/12/106 年前

关于 @charlietango/use-native-lazy-loading 的常见问题

@charlietango/use-native-lazy-loading 是什么?

检测浏览器是否支持图像元素上的新“ 载入” 属性 .注意:该包已被作者标记为弃用——No longer supported. Migrate to a new solution for support, or copy the code into the project

如何安装 @charlietango/use-native-lazy-loading?

在项目目录运行 npm install @charlietango/use-native-lazy-loading,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:react(^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0)、react-dom(^15.0.0 || ^16.0.0 || ^17.0.0 || ^18.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@charlietango/use-native-lazy-loading 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@charlietango/use-native-lazy-loading 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@charlietango/use-native-lazy-loading 可以商用吗?

@charlietango/use-native-lazy-loading 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@charlietango/use-native-lazy-loading 的下载量有多少?

根据 npm 官方下载统计,@charlietango/use-native-lazy-loading 在 2026/10/10 – 2026/11/08 这 30 天内被下载 7,917 次,日均约 264 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@charlietango/use-native-lazy-loading 还在维护吗?

最新版本 1.10.0 发布于 2022/04/15(4 年前);至今共发布 11 个版本,其中过去 12 个月发布了 0 个;首次发布于 2019/08/07。作者已将其标记为弃用,新项目建议寻找替代方案。