Vote #79542
未完了Select a JavaScript library to handle tags
0%
説明
I would like to continue my work on #1448 and in order to do it, I think that we should agree on which Javascript library we're going to use to handle the tags. I don't think that it worths to make our custom implementation and reinvent the wheel.
In my second patch from the mentioned issue, I've proposed "Selectize.js":https://github.com/selectize/selectize.js because is maintained and has tests.
Other alternatives:
- "Select2":https://github.com/select2/select2: which was my first option but I know that you prefer to not add it to the core (#23310#note-11). Also, this library is added by many plugins developers like Redmine UP, RM Plus, AlphaNodes, etc.
- "Tag-it":https://github.com/aehlke/tag-it: which is currently used by the redmine_tags plugin, but the library is no longer maintained (last commit in 2014) and I would like to avoid using it.
- "Taggle":https://github.com/okcoker/taggle.js: it has only few stars on github.
- "tagEditor":https://github.com/Pixabay/jQuery-tagEditor: only few stars on github and it doesn't have tests
Also, I think that this library can be used to improve other functionalities like:
- query columns selection
- add multiple watchers or members
- improved drop downs with many values.
Sizes in minified version:
| Selectize | 38.4 KB |
| Select2 | 66.3 KB |
Jean-Philippe Lang, please let me know what do you think.
journals
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
It seems Jean-Philippe Lang is not very active nowaday, could this decision be made by Go MAEDA instead ? so that Marius work can go on ?
Selectize.js sounds like a faire choice.
--------------------------------------------------------------------------------
I would like to review my proposals in order to include some libraries non jQuery dependent.
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
I looked for some other libraries that can be used to handle the tags:
* "Tagify":https://github.com/yairEO/tagify: JavaScript vanilla tag component, no custom dropdown. The size is ~7kb gzipped.
* "Choises":https://github.com/jshjohnson/Choices: tags and custom dropdown, like Select2 or Selectize, but not jQuery depending. The size is 22kb gzipped.
--------------------------------------------------------------------------------
Choices.js looks very good to me because it's more versatile and provides also options for improvements of other fields in the future.
--------------------------------------------------------------------------------
Another library is https://slimselectjs.com which seems to be a very good candidate from my tests.
--------------------------------------------------------------------------------
Jean-Philippe, can you help us with a feedback on this? I would like to finish my work on the tags solution for 4.2.0.
--------------------------------------------------------------------------------
related_issues
relates,New,1448,Add tags to issues
relates,New,29732,Populate items in drop down lists from internal/external source
relates,New,31313,Add search/filter to project select box in ticket create/edit form