Skip to main content

useLoadScript
hook

The useLoadScript hook loads an external script tag in the browser. It allows React components to lazy-load third-party dependencies.

[src: string, options?: LoadScriptOptions]
Record<string, string>
'head' | 'body'
boolean
Was this section helpful?

Example code

import React, {useEffect} from 'react';
import {useLoadScript} from '@shopify/hydrogen';

export default function Homepage() {
const scriptStatus = useLoadScript('https://some-cdn.com/some-script.js');

useEffect(() => {
if (scriptStatus === 'done') {
// do something
}
}, [scriptStatus]);

return <div>{scriptStatus === 'done' && <p>Script loaded!</p>}</div>;
}