tagger
0.6.2
_____
|_ _|___ ___ ___ ___ ___
| | | .'| . | . | -_| _|
|_| |__,|_ |_ |___|_|
|___|___| version 0.6.2
Demostración en línea
npm install @jcubic/tagger
o
yarn add @jcubic/tagger
tagger(document.querySelector('[name="tags"]'), {allow_spaces: false});
Se pueden crear múltiples entradas pasando una nota o matriz de elementos (por ejemplo, document.querySelectorAll ()). Si solo se contiene un elemento en la lista, entonces Tagger devolverá la instancia de Tagger, se devolverá una matriz de instancias de Tagger si el número de elementos es mayor que 1.
Tagger se puede usar fácilmente con 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 AppVer demostración en acción en 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 debe devolver lo que debería estar en el atributo href o falsonumber (predeterminado -1) Número de límite de etiquetas, cuando se establece en -1 no hay límitesstring de marcador de posición (predeterminado unset) si se establece en opciones o en la entrada inicial, este valor de marcador de posición se mostrará en la entrada de entrada de la etiquetafunction(name): string debe devolver el nombre de la etiqueta después de aplicar cualquier filtros (por ejemplo, String.ToUpperCase ()), vacío de cadena para filtrar la etiqueta y evitar la creación.Nota: Si está familiarizado con TypeScript, puede verificar la API buscando un archivo de definición de TypeScript:
tagger.d.ts
Copyright (c) 2018-2024 Jakub T. Jankiewicz
Lanzado bajo la licencia MIT