@anypoint-web-components/anypoint-checkbox

中文文档
1.2.5发布于 2023/06/17Apache-2.0ESM + CJS近 30 天下载 3315

Anypoint and Material DS styled checkbox

原始使用文档
文档目录10 节
  1. Working with forms
  2. Form-associated custom elements
  3. Usage
  4. Installation
  5. In a HTML document
  6. In a LitElement
  7. Using with custom forms
  8. Development
  9. Running the demo locally
  10. Running the tests

Deprecated

This component has been moved to anypoint-web-components/awc.

====

Anypoint and Material DS styled checkbox.

Published on NPM

tests

Working with forms

At the moment of publication of the element, the spec allowing custom elements to be accepted by the <form> element (Form-associated custom elements) is work in progress. Custom form element has to be used with custom elements that needs to be registered in a form. We suggest using iron-form.

Form-associated custom elements

This element supports form-associated custom elements spec that allows to use custom elements with <form> and <fieldset> elements. A browser may not yet support this feature. If the API is enable then the form element returns anypoint-checkbox is form.elements list and collect value of the control when submitted.

Usage

Checkboxes should be used with forms to select one of the available options. Unlike switch button which toggle action selects the control and immediately executes system related action, change of state of a checkbox does not carry any other related action than selecting an option. In other words, when change of the state of the control triggers change in the UI a switch button should be used instead of a checkbox.

Installation

npm i --save @anypoint-web-components/anypoint-checkbox

In a HTML document

<html>
  <head>
    <script type="module">
      import '@anypoint-web-components/anypoint-checkbox/anypoint-checkbox.js';
    </script>
  </head>
  <body>
    <anypoint-checkbox>Regular checkbox</anypoint-checkbox>
    <anypoint-checkbox checked>Checked checkbox</anypoint-checkbox>
    <anypoint-checkbox indeterminate>Indeterminate checkbox</anypoint-checkbox>
    <anypoint-checkbox required>Required checkbox</anypoint-checkbox>
    <anypoint-checkbox disabled>Disabled checkbox</anypoint-checkbox>
  </body>
</html>

In a LitElement

import { LitElement, html } from 'lit-element';
import '@anypoint-web-components/anypoint-checkbox/anypoint-checkbox.js';

class SimpleElement extends ControlStateMixin(ButtonStateMixin(LitElement)) {
  render() {
    return html`
    <anypoint-checkbox>Regular checkbox</anypoint-checkbox>
    <anypoint-checkbox checked>Checked checkbox</anypoint-checkbox>
    <anypoint-checkbox indeterminate>Indeterminate checkbox</anypoint-checkbox>
    <anypoint-checkbox required>Required checkbox</anypoint-checkbox>
    <anypoint-checkbox disabled>Disabled checkbox</anypoint-checkbox>
    `;
  }
}
window.customElements.define('simple-element', SimpleElement);

Using with custom forms

npm i --save @polymer/iron-form
<script type="module" src="node_modules/@polymer/iron-form/iron-form.js"></script>
<script type="module" src="node_modules/@anypoint-web-components/anypoint-checkbox/anypoint-checkbox.js"></script>
<script type="module" src="node_modules/@anypoint-web-components/anypoint-button/anypoint-button.js"></script>
<iron-form>
  <form>
   <anypoint-checkbox name="subscribe" value="newsletter">Subscribe to our newsletter</anypoint-checkbox>
   <anypoint-checkbox name="terms" value="accepted" checked required>Agree to terms and conditions</anypoint-checkbox>
   <anypoint-checkbox name="disabled" value="noop" disabled>This is never included</anypoint-checkbox>
  </form>
  <anypoint-button id="submit"></anypoint-button>
</iron-form>
<script>
  document.getElementById('submit').addEventListener('click', () => {
    const values = document.querySelector('iron-form').serializeForm();
    console.log(values);
  });
</script>

Development

git clone https://github.com/anypoint-web-components/anypoint-checkbox
cd anypoint-checkbox
npm install

Running the demo locally

npm start

Running the tests

npm test

版本与发布记录

@anypoint-web-components/anypoint-checkbox 共发布 14 个版本,首次发布于 2019/06/25;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.2.5latest2023/06/173 年前
1.2.42021/11/204 年前
1.2.32021/10/155 年前
1.2.22021/08/255 年前
1.2.12021/05/315 年前
1.2.02021/05/115 年前

关于 @anypoint-web-components/anypoint-checkbox 的常见问题

@anypoint-web-components/anypoint-checkbox 是什么?

Anypoint and Material DS styled checkbox

如何安装 @anypoint-web-components/anypoint-checkbox?

在项目目录运行 npm install @anypoint-web-components/anypoint-checkbox,或使用 pnpm add / yarn add / bun add。

@anypoint-web-components/anypoint-checkbox 支持 TypeScript 吗?

该包的 package.json 没有声明类型入口。需要类型提示时,可以在 npm 上查找社区维护的 @types/anypoint-web-components__anypoint-checkbox 是否存在。

@anypoint-web-components/anypoint-checkbox 支持 ESM 还是 CommonJS?

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

@anypoint-web-components/anypoint-checkbox 可以商用吗?

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

@anypoint-web-components/anypoint-checkbox 的下载量有多少?

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

@anypoint-web-components/anypoint-checkbox 还在维护吗?

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