Coder Social home page Coder Social logo

react-tagsinput's Introduction

react-tagsinput

npm version Build Status Coverage Status Dependency Status Download Count

Simple React component for inputing tags.

Demo

Install

npm install react-tagsinput --save

or

bower install react-tagsinput --save

Example

var TagsInput = require('./react-tagsinput');

var App = React.createClass({
  saveTags: function () {
    console.log('tags: ', this.refs.tags.getTags().join(', '));
  },

  render: function () {
    return (
      <div>
        <TagsInput ref="tags" tags={["tag1", "tag2"]} />
        <button onClick={this.saveTags}>Save</button>
      </div>
    );
  }
});

API

Props

tags

Tags to preloaded, default is [].

placeholder

Placeholder text for the add a tag input, default is "Add a tag".

classNamespace

Namespace for CSS classes, default is react i.e CSS classes are react-tagsinput.

addOnBlur

Boolean whether a tag should be added when the input field blurs, default is true.

validate

A function which returns true if a tag is valid, default function returns true for every string but the empty string.

addKeys

An array of key codes that add a tag, default is [9, 13] (Tab and Enter).

onChange

Callback when the tag input changes, the argument is an array of the current tags.

onBlur

Callback when input field blurs, the argument is an array of the current tags.

onChangeInput

Callback when the input changes, the argument is the value of the input.

onTagAdd

Callback when a tag is added, argument is the added tag.

onBeforeTagAdd

Callback before a tag is added, if it returns a string the tag is transformed if it returns a falsy value the tag is not added.

onTagRemove

Callback when a tag is removed, argument is the removed tag.

onBeforeTagRemove

Callback before a tag removed, if it returns a falsy value the tag is not removed.

Methods

getTags()

Returns an array of the current tags.

addTag(tag)

Adds a tag.

inputFocus()

Focus on the tag input.

Styles

Look at react-tagsinput.css for an idea on how to style this component.

Addendum: Input completion

An example of how to add input completion to the TagsInput component can be found in examples/completion.html.

Completion Demo

Contributors

  • Ola Holmström (@olahol)
  • Dmitri Voronianski (@voronianski)
  • Artem Vovsya (@avovsya)

MIT Licensed

react-tagsinput's People

Contributors

voronianski avatar avovsya avatar

Watchers

James Cloos avatar Steven Fong avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.