Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

221
Views
How to use .on in react?

I have a component that using the tagify library. I am getting an error that tagify.on is not a function.

How do I do the .on in React? How do I add these .on methods to the this tagify component that I'm creating?

Do I make them all constants and arrow functions?

const tagify = new Tagify(tagsInput, {
    //  mixTagsInterpolator: ["{{", "}}"],
    mode: 'mix',
    pattern: /@|#/,
    here) tagTextProp: 'text',

    whitelist: fields.map(function(item) {
        return typeof item == 'string' ? {
            value: item
        } : item
    }),
    dropdown: {
        enabled: 1,
        position: 'text',
        mapValueTo: 'text',
        highlightFirst: true
    },
    callbacks: {
        add: console.log, // callback when adding a tag
        remove: console.log // callback when removing a tag
    }
});

let tagsInput = createRef();

tagify.on('input', function(e) {
    < -- - this is giving error tagify.on is not a
    function
    const prefix = e.detail.prefix;

    if (prefix) {

        if (e.detail.value.length > 1)
            tagify.dropdown.show(e.detail.value);
    }

    console.log(tagify.value)
    console.log('mix-mode "input" event value: ', e.detail)
});

tagify.on('add', function(e) {
    < -- - this is giving error tagify.on is not a
    function
    console.log(e)
});
about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

Had something similar to yours. Suggestion:

  • Write all of the upper code in a function (except the let tagsInput = createRef(); line, move it out). Call it configureTagify or whatever.
  • Call it in an appropriate place (in the beginning for e.x, the componentDidMount's equivalent)

.

useEffect(() => {  
  ...  
  configureTagify();  
  ...  
}, []);
about 4 years ago · Juan Pablo Isaza Report

0

Looking after the docs,

.on method is provided for jQuery, you don't need it. You can use it on callbacks:

callbacks: {
  "input": (e) => console.log(e.detail))
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!