mirror of
https://github.com/jakejarvis/jarv.is.git
synced 2025-12-05 14:18:58 -05:00
separate out windows me wallpaper container
This commit is contained in:
25
components/Wallpaper/Wallpaper.tsx
Normal file
25
components/Wallpaper/Wallpaper.tsx
Normal file
@@ -0,0 +1,25 @@
|
||||
import { useEffect, useRef } from "react";
|
||||
import classNames from "classnames/bind";
|
||||
import type { ReactNode } from "react";
|
||||
|
||||
import styles from "./Wallpaper.module.css";
|
||||
const cx = classNames.bind(styles);
|
||||
|
||||
type Props = {
|
||||
image: string;
|
||||
tile?: boolean;
|
||||
className?: string;
|
||||
children: ReactNode;
|
||||
};
|
||||
|
||||
const Wallpaper = ({ image, tile, className, ...rest }: Props) => {
|
||||
const bgRef = useRef<HTMLDivElement>(null);
|
||||
|
||||
useEffect(() => {
|
||||
bgRef.current.style.backgroundImage = `url(${image})`;
|
||||
}, []); // eslint-disable-line react-hooks/exhaustive-deps
|
||||
|
||||
return <div ref={bgRef} className={cx(styles.wallpaper, { tile: !!tile }, className)} {...rest} />;
|
||||
};
|
||||
|
||||
export default Wallpaper;
|
||||
Reference in New Issue
Block a user