Package Exports
- @faceless-ui/window-info
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@faceless-ui/window-info) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
React Window Info
A utility for subscribing to window events. Useful for conditional rendering, CSS breakpoints, or any window-based triggers.
Highlights
Event Consolidation
One event, many effects. Attach one, single event listener to the window with WindowInfoProvider. Then subscribe to it from anywhere with useWindowInfo, withWindowInfo, or WindowInfo, they all do the same thing.
Animation Ready
Piped through requestAnimationFrame for built-in throttling and debouncing.
Quick Start
Installation
$ npm i @faceless-ui/window-info
$ # or
$ yarn add @faceless-ui/window-info
Composition
import React from 'react';
import {
WindowInfo,
WindowInfoProvider,
withWindowInfo,
useWindowInfo
} from '@faceless-ui/window-info';
const WithWindowInfo = withWindowInfo(({ windowInfo }) => <div>{windowInfo}</div>);
const UseWindowInfo = () => <div>{useWindowInfo()}</div>;
const App = () => (
<WindowInfoProvider>
<WithWindowInfo />
<UseWindowInfo />
<WindowInfo>
{(windowInfo) => <div>{windowInfo}</div>}
<WindowInfo>
</WindowInfoProvider>
);
export default App;
For working examples, see the demo app.
Demo
$ git clone git@github.com:faceless-ui/window-info.git
$ yarn
$ yarn dev
$ open http://localhost:3000
API
Contribution
Help us, or let us help you help us.
License
MIT Copyright (c) TRBL, LLC