2020-11-02 22:54:15 +08:00
# TaskItem
2021-01-25 17:35:52 +08:00
[![Version ](https://img.shields.io/npm/v/@tiptap/extension-task-item.svg?label=version )](https://www.npmjs.com/package/@tiptap/extension-task-item)
[![Downloads ](https://img.shields.io/npm/dm/@tiptap/extension-task-item.svg )](https://npmcharts.com/compare/@tiptap/extension-task-item?minimal=true)
2020-11-06 05:16:18 +08:00
This extension renders a task item list element, which is a `<li>` tag with a `data-type` attribute set to `taskItem` . It also renders a checkbox inside the list element, which updates a `checked` attribute.
2021-04-16 03:48:19 +08:00
This extension doesn’ t require any JavaScript framework, it’ s based on Vanilla JavaScript.
2020-11-02 22:54:15 +08:00
## Installation
```bash
# With npm
npm install @tiptap/extension -task-list @tiptap/extension -task-item
# Or: With Yarn
yarn add @tiptap/extension -task-list @tiptap/extension -task-item
```
2021-02-12 22:02:40 +08:00
This extension requires the [`TaskList` ](/api/nodes/task-list ) node.
2020-11-02 22:54:15 +08:00
## Settings
2021-10-02 05:27:39 +08:00
### HTMLAttributes
Custom HTML attributes that should be added to the rendered HTML tag.
```js
TaskItem.configure({
HTMLAttributes: {
class: 'my-custom-class',
},
})
```
2020-11-02 22:54:15 +08:00
2020-11-06 05:16:18 +08:00
## Keyboard shortcuts
2021-10-02 04:57:27 +08:00
| Command | Windows/Linux | macOS |
| --------------- | ------------------ | ------------------ |
| splitListItem() | `Enter` | `Enter` |
| sinkListItem() | `Tab` | `Tab` |
| liftListItem() | `Shift` `Tab` | `Shift` `Tab` |
2020-11-02 22:54:15 +08:00
## Source code
2021-04-21 21:31:11 +08:00
[packages/extension-task-item/ ](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-task-item/ )
2020-11-02 22:54:15 +08:00
## Usage
2021-08-26 05:10:20 +08:00
< tiptap-demo name = "Nodes/TaskItem" > < / tiptap-demo >