Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save crazy4groovy/b8c8bafa963aa478240b7e8420bec0ae to your computer and use it in GitHub Desktop.
Save crazy4groovy/b8c8bafa963aa478240b7e8420bec0ae to your computer and use it in GitHub Desktop.
Control the speed at which your loading state shows up depending on the user's internet speed.
const defaultDelay = 500;
export default function getDelay(): number {
if (typeof window !== "undefined") {
if (window.navigator && window.navigator.connection) {
const connection = window.navigator.connection.effectiveType;
switch (connection) {
case "4g":
return defaultDelay;
case "3g":
return 200;
case "2g":
return 0;
default:
return defaultDelay;
}
}
}
return defaultDelay;
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment