tagger
0.6.2
_____
|_ _|___ ___ ___ ___ ___
| | | .'| . | . | -_| _|
|_| |__,|_ |_ |___|_|
|___|___| version 0.6.2
Онлайн демо
npm install @jcubic/tagger
или
yarn add @jcubic/tagger
tagger(document.querySelector('[name="tags"]'), {allow_spaces: false});
Несколько входов могут быть созданы путем передачи узла или массива элементов (например, document.queryselectorall ()). Если в списке содержится только один элемент, то Tagger вернет экземпляр Tagger, массив экземпляров Tagger будет возвращен, если количество элементов больше 1.
Tagger можно легко использовать с ReactJS.
import { useRef , useState , useEffect } from 'react'
import tagger from '@jcubic/tagger'
const App = ( ) => {
const [ tags , setTags ] = useState ( [ ] ) ;
const inputRef = useRef ( null ) ;
useEffect ( ( ) => {
const taggerOptions = {
allow_spaces : true ,
} ;
tagger ( inputRef . current , taggerOptions ) ;
onChange ( ) ;
} , [ inputRef ] ) ;
const onChange = ( ) => {
setTags ( tags_array ( inputRef . current . value ) ) ;
} ;
return (
< div className = "app" >
< input type = "text" ref = { inputRef } onChange = { onChange } defaultValue = "charles, louis, michel" />
< br />
< ul >
{ tags . map ( ( tag , index ) => < li key = { ` ${ tag } - ${ index } ` } > { tag } </ li > ) }
</ ul >
</ div >
)
}
function tags_array ( str ) {
return str . split ( / s*,s* / ) . filter ( Boolean ) ;
}
export default AppСмотрите демо в действии на Codepen.
add_tag(string): booleanremove_tag(string): booelancomplete(string): void{list: string[] | function(): Promise(string[])|string[], delay: miliseconds, min_length: number}function(name): string|false It должен вернуть то, что должно быть в атрибуте href или falsenumber (по умолчанию -1) Ограниченное количество тегов, когда установлено на -1 Нет ограниченийstring заполнителя (по умолчанию UNSET) Если установлено в параметрах или на начальном вводе, это значение заполнителя будет показано на входе в запись тегаfunction(name): string Он должен вернуть имя тега после применения любых фильтров (например, string.touppercase ()), пустая строка для фильтрации тега и предотвращения создания.ПРИМЕЧАНИЕ. Если вы знакомы с TypeScript, вы можете проверить API, посмотрев на файл определения TypeScript:
Tagger.d.ts
Copyright (C) 2018-2024 Jakub T. Jankiewiczz
Выпущен по лицензии MIT