UNPKG

react-plaid

Version:
67 lines (55 loc) 1.7 kB
# React Plaid React plaid component that has no DOM. Pass in the `open` prop to open. Unforunately there is no close method on Plaid Link. This plaid component depends on a global Plaid existing (from plaid-link script tag on the page). This may change in the future. Be sure to handle changing `open` back to `false` with the `onExit` function otherwise you will not be able to re-open. ## Important This requires you have `<script src="https://cdn.plaid.com/link/v2/stable/link-initialize.js">` on the page before your React executes. ### Example Renderings: ``` render() { <ReactPlaid open={this.state.open} onExit={() => this.setState({open: false})}> <div> Other things here. </div> </ReactPlaid> } ``` or ``` render() { <div> Other DOM elements here. <ReactPlaid open={this.state.open} onExit={() => this.setState({open: false})} /> </div> } ``` ### Full Example ``` import ReactPlaid, { DEV_ENV, PROD_ENV, CONNECT_PRODUCT } from "react-plaid"; class MyPlaidStuff extends Component { constructor(props, context) { super(props, context); this.state = { open: false, plaidData: [], } } render() { <div> <button onClick={() => this.setState({ open: true})}>Open Plaid</button> { this.state.plaidData.map(({ institution }) => <div>{institution.name} - {institution.type}</div>) } <ReactPlaid clientName="Client Name" product={CONNECT_PRODUCT} apiKey="123" env={DEV_ENV} open={this.state.open} onSuccess={(token, metaData) => this.setState({plaidData: metaData})} onExit={() => this.setState({open: false})} /> </div> } }