# react-tether
**Repository Path**: mirrors_vmware-archive/react-tether
## Basic Information
- **Project Name**: react-tether
- **Description**: React wrapper around Tether from Hub Spot
- **Primary Language**: Unknown
- **License**: MIT
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2022-03-25
- **Last Updated**: 2025-08-23
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
## React Tether
[](https://david-dm.org/souporserious/react-tether)
React wrapper around [Tether](https://github.com/hubspot/tether) from Hub Spot.

## Install
`npm install react-tether --save`
`bower install react-tether --save`
## Example Usage
```javascript
import TetherComponent from 'react-tether'
class SimpleDemo extends React.Component {
constructor(props) {
super(props)
this.state = {
isOpen: false
}
}
render() {
const { isOpen } = this.state
return(
{ /* First child: This is what the item will be tethered to */ }
{ /* Second child: If present, this item will be tethered to the the first child */ }
{
isOpen &&
Tethered Content
A paragraph to accompany the title.
}
)
}
}
```
## Props
#### `children`: PropTypes.node.isRequired (2 Max)
The first child is used as the Tether's `target` and the second child (which is optional) is used as Tether's `element` that will be moved.
#### `renderElementTag`: PropTypes.string
The tag that is used to render the Tether element, defaults to `div`.
#### `renderElementTo`: PropTypes.string
Where in the DOM the Tether element is appended. Passes in any valid selector to `document.querySelector`. Defaults to `document.body`.
#### `Tether Options`:
Any valid [Tether options](http://tether.io/#options).
## Imperative API
The following methods are exposed on the component instance:
- `getTetherInstance(): Tether`
- `disable(): void`
- `enable(): void`
- `on(event: string, handler: function, ctx: any): void`
- `once(event: string, handler: function, ctx: any): void`
- `off(event: string, handler: function): void`
- `position(): void`
#### Example usage:
```javascript
this.tether = tether}>
this.tether && this.tether.position()}
```
## Run Example
clone repo
`git clone git@github.com:souporserious/react-tether.git`
move into folder
`cd ~/react-tether`
install dependencies
`npm install`
run dev mode
`npm run dev`
open your browser and visit: `http://localhost:8080/`