💽Emotion Cache
How to integrate emotion cache with TSS
There is three ways to make tss-react use a specific emotion cache instead of the default one.
Using the provider
tss-react pickups the contextual cache.
import { CacheProvider } from "@emotion/react";
import createCache from "@emotion/cache";
const cache = createCache({
"key": "custom"
});
render(
<CacheProvider value={cache}>
{/* ... */}
</CacheProvider>
);Use a specific provider
If you want to provide a contextuel cache only to tss-react you can use the <TssCacheProvider />.
This is usefull if you want to enforce that TSS and MUI uses different caches.
To be clear, the difference between import { CacheProvider } from "@emotion/react"; and import { TssCacheProvider } from "tss-react"; is that the cahe provided by <TssCacheProvider /> will only be picked up by tss-react when the cache provided by <CacheProvider /> will be picked up by TSS, MUI and any direct usage of @emotion/react.
If you are a library author that publish a module that uses tss-react internally. You should avoid using <TssCacheProvider /> if you want to avoid having tss-react as peerDependency of your module.
Specify the cache at inception
This approach isn't the best option for SSR.
Last updated
Was this helpful?
