mirror of
https://github.com/infinilabs/coco-app.git
synced 2025-12-17 03:57:45 +01:00
26 lines
552 B
TypeScript
26 lines
552 B
TypeScript
|
|
import { useEffect } from 'react';
|
||
|
|
|
||
|
|
const useScript = (src: string) => {
|
||
|
|
useEffect(() => {
|
||
|
|
if (document.querySelector(`script[src="${src}"]`)) {
|
||
|
|
return; // Prevent duplicate script loading
|
||
|
|
}
|
||
|
|
|
||
|
|
const script = document.createElement('script');
|
||
|
|
script.src = src;
|
||
|
|
script.async = true;
|
||
|
|
document.body.appendChild(script);
|
||
|
|
|
||
|
|
return () => {
|
||
|
|
document.body.removeChild(script);
|
||
|
|
};
|
||
|
|
}, [src]);
|
||
|
|
};
|
||
|
|
|
||
|
|
export default useScript;
|
||
|
|
|
||
|
|
|
||
|
|
export const useIconfontScript = () => {
|
||
|
|
useScript('/assets/fonts/icons/iconfont.js');
|
||
|
|
};
|