@bam.tech/lrud

中文文档
8.0.2发布于 2024/09/17Apache-2.0TypeScriptESM + CJS近 30 天下载 1.5万

左边,右边,上,下。 通过方向控制输入设备的空间导航库

中文使用文档
文档目录9 节
  1. : nut 和 bolt:维护模式 : nut 和 bolt:
  2. 从V2升级
  3. 开始
  4. 使用量
  5. 运行测试
  6. 版本
  7. 与
  8. 灵感
  9. 替代品

法语 Build Status

通过方向控制输入设备的空间导航库

: nut 和 bolt:维护模式 : nut 和 bolt:

LRUD目前处于维护模式;已存在的bug将会被固定,但不会添加新的特性. 一个新的图书馆叫 空间空间 现在开放源码社区可以使用.

从V2升级

v3是主要的重写,涵盖许多新特性. 然而,不幸的是,它打破了一些倒向相容性.

我们目前正在为升级进程编写更详细的文件。 然而,目前需要注意的主要问题;

  • 事件的变化、排放的和排放的
  • 删除 grid 赞成: isIndexAligned 行为

开始

git clone [email protected]:bbc/lrud.git lrud
cd lrud
npm install

路德写在 字体 并使用 手套。 。 。 .

使用量

npm install lrud
const { Lrud } = require('Lrud')

// create an instance, register some nodes and assign a default focus
var navigation = new Lrud()
navigation
  .registerNode('root', { orientation: 'vertical' })
  .registerNode('item-a', { parent: 'root', isFocusable: true })
  .registerNode('item-b', { parent: 'root', isFocusable: true })
  .assignFocus('item-a')

// handle a key event
document.addEventListener('keypress', (event) => {
  navigation.handleKeyEvent(event)
});

// Lrud will output an event when it handles a move
navigation.on('move', (moveEvent) => {
  myApp.doSomethingOnNodeFocus(moveEvent.enter)
})

见 使用文档 详细信息 API 详细信息.

更多“ 完整” 的例子, 包括常用例, 请检查 食谱

运行测试

所有代码都用打字符写,所以我们使用 tsconfig.json 财务报告和审定财务报表 jest.config.js 以确保测试运行正确.

测试文件被相当任意地分开,目的是把更大的一组测试破解成自己的文件.

npm test

要运行一个特定的测试文件, 请使用 npx jest 从项目根.

npx jest src/lrud.test.js

也可以用动词输出来进行所有测试. 这有助于列出各种试验方案,以确保涵盖行为.

npm run test:verbose

您也可以使用覆盖输出进行所有测试

npm run test:coverage

一些测试有相关的图表,以更好地解释测试的内容。 这些可以在 ./docs/test-diagrams。 。 。 .

我们也有一个特定的测试文件( :src/build.test.js),以确保我们没有打破Typescript/rollup.js积分.

版本

npm version <patch:minor:major>
npm publish

与

灵感

替代品

许可证

LRUD是BBC TAL 库的一部分,根据Apache 2开源许可证(Apache-2.0)的规定,每个人都可以使用. 看看密码里的LICENSE文件.

版权 (c) 2018 BBC

版本与发布记录

@bam.tech/lrud 共发布 3 个版本,首次发布于 2023/07/17;过去 12 个月发布了 0 个版本。

版本发布日期距今
8.0.2latest2024/09/172 年前
8.0.12023/10/253 年前
8.0.02023/07/173 年前

关于 @bam.tech/lrud 的常见问题

@bam.tech/lrud 是什么?

左边,右边,上,下。 通过方向控制输入设备的空间导航库

如何安装 @bam.tech/lrud?

在项目目录运行 npm install @bam.tech/lrud,或使用 pnpm add / yarn add / bun add。

@bam.tech/lrud 支持 TypeScript 吗?

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

@bam.tech/lrud 支持 ESM 还是 CommonJS?

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

@bam.tech/lrud 可以商用吗?

@bam.tech/lrud 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@bam.tech/lrud 的下载量有多少?

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

@bam.tech/lrud 还在维护吗?

最新版本 8.0.2 发布于 2024/09/17(2 年前);至今共发布 3 个版本,其中过去 12 个月发布了 0 个;首次发布于 2023/07/17。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。