一个简单的钩子,用于在 React 中创建完全可访问的下拉菜单-源码

上传者: 42134285 | 上传时间: 2021-06-09 13:04:02 | 文件大小: 538KB | 文件类型: ZIP
React Accessible Dropdown Menu Hook 这个 Hook 在构建下拉菜单、下拉按钮等时处理所有可访问性逻辑,并让设计完全由您决定。 当您在菜单外部单击时,它还处理关闭菜单的逻辑。 :wheelchair_symbol: 完全可访问 :package: 完全用 TypeScript 编写 :microscope: 经过彻底测试 :high_voltage: 零依赖 :sparkles: 小尺寸 快速入门 使用 Yarn 或 npm 安装: yarn add react-accessible-dropdown-menu-hook npm install react-accessible-dropdown-menu-hook 导入 Hook :从'react-accessible-dropdown-menu-hook'导入useDropdownMenu; 调用 Hook,告诉它你的菜单有多少项: const { buttonProps, itemProps, isOpen, setIsOpen } = useDropdownMenu(numberOfItems)

文件下载

资源详情

[{"title":"( 57 个子文件 538KB ) 一个简单的钩子,用于在 React 中创建完全可访问的下拉菜单-源码","children":[{"title":"react-accessible-dropdown-menu-hook-master","children":[{"title":".eslintrc.json <span style='color:#111;'> 39B </span>","children":null,"spread":false},{"title":"tsconfig.build.json <span style='color:#111;'> 180B </span>","children":null,"spread":false},{"title":".github","children":[{"title":"pull_request_template.md <span style='color:#111;'> 128B </span>","children":null,"spread":false},{"title":"workflows","children":[{"title":"main.yml <span style='color:#111;'> 4.27KB </span>","children":null,"spread":false}],"spread":true}],"spread":true},{"title":"yarn.lock <span style='color:#111;'> 217.54KB </span>","children":null,"spread":false},{"title":".prettierignore <span style='color:#111;'> 50B </span>","children":null,"spread":false},{"title":"src","children":[{"title":"use-dropdown-menu.test.tsx <span style='color:#111;'> 11.70KB </span>","children":null,"spread":false},{"title":"use-dropdown-menu.ts <span style='color:#111;'> 6.40KB </span>","children":null,"spread":false}],"spread":true},{"title":"jest-setup.ts <span style='color:#111;'> 36B </span>","children":null,"spread":false},{"title":"website","children":[{"title":".eslintrc.json <span style='color:#111;'> 201B </span>","children":null,"spread":false},{"title":"docusaurus.config.js <span style='color:#111;'> 2.09KB </span>","children":null,"spread":false},{"title":"yarn.lock <span style='color:#111;'> 434.34KB </span>","children":null,"spread":false},{"title":"src","children":[{"title":"pages","children":[{"title":"index.tsx <span style='color:#111;'> 2.46KB </span>","children":null,"spread":false},{"title":"styles.module.css <span style='color:#111;'> 607B </span>","children":null,"spread":false},{"title":"demo.tsx <span style='color:#111;'> 3.56KB </span>","children":null,"spread":false}],"spread":true},{"title":"css","children":[{"title":"custom.css <span style='color:#111;'> 2.48KB </span>","children":null,"spread":false}],"spread":false}],"spread":true},{"title":"babel.config.js <span style='color:#111;'> 88B </span>","children":null,"spread":false},{"title":"sidebars.js <span style='color:#111;'> 199B </span>","children":null,"spread":false},{"title":"tsconfig.json <span style='color:#111;'> 197B </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 745B </span>","children":null,"spread":false},{"title":"docs","children":[{"title":"getting-started","children":[{"title":"using.md <span style='color:#111;'> 833B </span>","children":null,"spread":false},{"title":"import.md <span style='color:#111;'> 518B </span>","children":null,"spread":false},{"title":"install.md <span style='color:#111;'> 545B </span>","children":null,"spread":false}],"spread":false},{"title":"design","children":[{"title":"return-object.md <span style='color:#111;'> 2.24KB </span>","children":null,"spread":false},{"title":"accessibility.md <span style='color:#111;'> 1.58KB </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":".gitignore <span style='color:#111;'> 233B </span>","children":null,"spread":false},{"title":"package.json <span style='color:#111;'> 1.35KB </span>","children":null,"spread":false},{"title":"static","children":[{"title":".nojekyll <span style='color:#111;'> 0B </span>","children":null,"spread":false},{"title":"img","children":[{"title":"undraw_web_browsing.svg <span style='color:#111;'> 11.86KB </span>","children":null,"spread":false},{"title":"favicon.ico <span style='color:#111;'> 15.04KB </span>","children":null,"spread":false},{"title":"undraw_online_test.svg <span style='color:#111;'> 8.16KB </span>","children":null,"spread":false},{"title":"undraw_appreciation.svg <span style='color:#111;'> 8.62KB </span>","children":null,"spread":false},{"title":"logo.png <span style='color:#111;'> 3.81KB </span>","children":null,"spread":false},{"title":"Logo.sketch <span style='color:#111;'> 35.24KB </span>","children":null,"spread":false}],"spread":false}],"spread":false}],"spread":false},{"title":".prettierrc.json <span style='color:#111;'> 113B </span>","children":null,"spread":false},{"title":"CONTRIBUTING.md <span style='color:#111;'> 5.29KB </span>","children":null,"spread":false},{"title":"tsconfig.base.json <span style='color:#111;'> 384B </span>","children":null,"spread":false},{"title":"tsconfig.json <span style='color:#111;'> 110B </span>","children":null,"spread":false},{"title":"LICENSE <span style='color:#111;'> 1.04KB </span>","children":null,"spread":false},{"title":"README.md <span style='color:#111;'> 2.91KB </span>","children":null,"spread":false},{"title":"jest.config.ts <span style='color:#111;'> 465B </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 87B </span>","children":null,"spread":false},{"title":".eslintignore <span style='color:#111;'> 91B </span>","children":null,"spread":false},{"title":"package.json <span style='color:#111;'> 2.11KB </span>","children":null,"spread":false},{"title":"test-projects","children":[{"title":".eslintrc.json <span style='color:#111;'> 40B </span>","children":null,"spread":false},{"title":"browser","children":[{"title":"public","children":[{"title":"index.html <span style='color:#111;'> 295B </span>","children":null,"spread":false}],"spread":false},{"title":"yarn.lock <span style='color:#111;'> 518.55KB </span>","children":null,"spread":false},{"title":"src","children":[{"title":"index.tsx <span style='color:#111;'> 167B </span>","children":null,"spread":false},{"title":"app.tsx <span style='color:#111;'> 1.06KB </span>","children":null,"spread":false},{"title":"app.css <span style='color:#111;'> 118B </span>","children":null,"spread":false},{"title":"app.test.ts <span style='color:#111;'> 4.68KB </span>","children":null,"spread":false},{"title":"react-app-env.d.ts <span style='color:#111;'> 40B </span>","children":null,"spread":false}],"spread":false},{"title":"tsconfig.json <span style='color:#111;'> 470B </span>","children":null,"spread":false},{"title":"jest.config.ts <span style='color:#111;'> 470B </span>","children":null,"spread":false},{"title":".gitignore <span style='color:#111;'> 324B </span>","children":null,"spread":false},{"title":"package.json <span style='color:#111;'> 1.15KB </span>","children":null,"spread":false}],"spread":false}],"spread":false},{"title":"eslint.base.json <span style='color:#111;'> 873B </span>","children":null,"spread":false}],"spread":false}],"spread":true}]

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明