react-ua

4.0.0 • Public • Published

react-ua

npm version Build Status

React User Agent Component and Provider, SSR-ready, using new React Context API

Requirement

  • React 16.8.0

Features

Try it live at StackBlitz

import React from 'react';
import { UserAgentProvider, useUserAgent } from 'react-ua';

const Comp = () => {
  const ua = useUserAgent();
  return <div>OS: {ua.os.name}</div>;
};

const App = () => (
  <UserAgentProvider>
    <Comp />
  </UserAgentProvider>
);

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

// SSR
const el = (
  <UserAgentProvider value={request.headers['user-agent']}>
    <Comp />
  </UserAgentProvider>
);

ReactDOMServer.renderToString(el);

HOC (deprecated)

import { withUserAgent } from 'react-ua/hoc';

const CompWithHoc = withUserAgent(({ ua }) => <div>OS: {ua.os.name}</div>);

const App = () => (
  <UserAgentProvider>
    <CompWithHoc />
  </UserAgentProvider>
);

License

MIT

Package Sidebar

Install

npm i react-ua

Weekly Downloads

462

Version

4.0.0

License

MIT

Unpacked Size

26.1 kB

Total Files

5

Last publish

Collaborators

  • antonybudianto