Skip to main content
Version: 1.0.16

Essential Props of ReactMultiEmail

The ReactMultiEmail component is highly versatile and customizable, designed to accommodate a variety of user needs. To harness its full potential, it is crucial to understand the three fundamental props: emails, onChange, and getLabel.


Essential Props

emails

emails prop is responsible for representing an array of email addresses.

  • Property: emails
  • Type: string[]
  • Default: undefined
info

This prop is critical for maintaining the state of the email addresses inputted by the user.

onChange

The onChange prop is a callback function invoked whenever there is a change in the email array, receiving the updated array as its parameter.

  • Property: onChange
  • Type: (emails: string[]) => void
  • Default: undefined
info

Leverage this callback to synchronize the email state with the user input, ensuring the component reflects the most recent user interactions.

getLabel

getLabel prop allows for customization of the display of each email tag.

  • Property: getLabel
  • Type: (email: string, index: number, removeEmail: (index: number) => void) => ReactNode
  • Default: undefined
info

Utilize this prop to stylize each email tag individually, adding a unique flair to your component's presentation.


Demo

See the demonstration below utilizing all three essential props:


tip

Enter a valid email address and press the Enter key. To remove, press the Backspace key.


Code

EssentialProps.tsx
import React, { useState } from 'react'
import { ReactMultiEmail } from 'react-multi-email'
import 'react-multi-email/style.css'

export default function EssentialProps () {
const [emails, setEmails] = React.useState<string[]>([]);
return (
<ReactMultiEmail
emails={emails}
onChange={(_emails: string[]) => {
setEmails(_emails);
}}
getLabel={(
email: string,
index: number,
removeEmail: (index: number) => void
) => {
return (
<div data-tag key={index}>
{email}
<span data-tag-handle onClick={() => removeEmail(index)}>
×
</span>
</div>
);
}}
/>
);
}

By mastering these three essential props, you can unleash the full capabilities of the ReactMultiEmail component, ensuring a user-friendly and aesthetically pleasing email input experience.