npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

react-recaptcha-v2-web

v1.0.2

Published

React hook for invisible Google reCAPTCHA v2

Downloads

185

Readme

react-recaptcha-v2-web

一个基于 react-google-recaptcha 的轻量 Hook,封装了 Invisible reCAPTCHA v2 的加载、渲染与执行,提供简单一致的 API:initexecuteAsync

特性

  • Invisible 模式:不破坏页面布局,按需弹出验证码。
  • 即插即用:传入 sitekey 即可,剩下的渲染/卸载全自动。
  • 大陆网络优化:默认设置 window.recaptchaOptions.useRecaptchaNet = true
  • SSR 友好:内部对 window 做了存在性判断。

安装

pnpm add react-recaptcha-v2-web
# 或
npm i react-recaptcha-v2-web

Peer 依赖:

  • react >= 18 或 19
  • react-dom >= 18 或 19

快速上手

import { useEffect } from 'react'
import { useRecaptcha } from 'react-recaptcha-v2-web'

export default function Demo() {
  const { init, executeAsync } = useRecaptcha({
    sitekey: 'your_site_key',
    // 其余 props 透传给 react-google-recaptcha,如:hl、badge、onErrored 等
  })

  useEffect(() => {
    // 首次进入或需要使用前初始化(仅在浏览器环境执行)
    init()
  }, [init])

  const handleSubmit = async () => {
    try {
      // 弹出验证码并等待完成;自动在成功后 reset
      const token = await executeAsync()
      // 将 token 提交到服务端校验
      console.log('recaptcha token: ', token)
    } catch (e) {
      // 未加载完成或用户关闭了弹窗等情况
      console.error(e)
    }
  }

  return <button onClick={handleSubmit}>提交</button>
}

许可证

MIT