Skip to content

bitmatica/react-resize-detector

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

30 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

React resize detector

Your feedback is highly appreciated!

Please, file an issue if something went wrong or let me know via Twitter @maslianok


Event-based Element Resize Detection

This implementation does NOT use an internal timer to detect size changes (as most implementations do). It uses scroll events. Inspired by this article Cross-Browser, Event-based, Element Resize Detection written by Back Alley Coder

Demo

Local demo:

git clone https://github.com/maslianok/react-resize-detector.git
cd react-resize-detector/example
npm install && npm start

Installation

npm i react-resize-detector --save

Example

import React, {Component} from 'react';
import {render} from 'react-dom';
import ReactResizeDetector from 'react-resize-detector';

class App extends Component {
  render() {
    return (
      <div>
        ...
        <ReactResizeDetector handleWidth handleHeight onResize={this._onResize.bind(this)} />
      </div>
    );
  }

  _onResize() {
    ...
  }
}

render(<App />, document.getElementById('root'));

API

handleWidth

(Bool) Trigger onResize on width change

handleHeight

(Bool) Trigger onResize on height change

onResize

(Func) Function that will be invoked with width and height arguments. When handling only one of dimensions, other argument will be undefined.

License

MIT

About

A Cross-Browser, Event-based, Element Resize Detection for React

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 95.6%
  • HTML 4.4%