react-style-singleton

Just create a single stylesheet...

Usage no npm install needed!

<script type="module">
  import reactStyleSingleton from 'https://cdn.skypack.dev/react-style-singleton';
</script>

README

react-style-singleton

300b with all dependencies, minified and gzipped

Creates a style component with internal tracker.

  • Adds styles to the browser on the first instance mount.
  • Removes after the last instance unmount.
  • Thus helps you deliver styles you need to the customer, and clean up later.
  • Is not server-side rendering compatible!

API

Component

import {styleSingleton} from 'react-style-singleton'

const Style = styleSingleton();

export const App = () => (
  <Style styles={'body {color:red}'} />
);

Hook

import {styleHookSingleton} from 'react-style-singleton';

const useStyle = styleHookSingleton();
const useAnotherStyle = styleHookSingleton();

export const App = () => {
  useStyle('div {color:red}');
  useAnotherStyle('body { background-color:red }');
  return (<div />);
}