I'm using the oninitialclientrender from Gatsby the Gatsby API and @TheWeeezel's method from Показывать наложение только один раз при входе на страницу (не изменение маршрута). HowTo? , чтобы использовать компонент React в качестве экрана загрузки для моего сайта. Проблема в том, что есть заметная задержка при начальной загрузке стиля svg, необходимого для позиционирования и заливки. Я пробовал использовать встроенный стиль вместо загрузки стиля с помощью файла css, но он по-прежнему вызывает ту же задержку. Вот мой код из моего пользовательского файла html. js.
<div
id="___loader"
key={`loader`}
style={{
background: "#0F2027",
height: "100%",
width: "100%",
margin: "0",
padding: "0",
}}
>
<LoadingAssets></LoadingAssets>
</div>
Вот код из моего gatsby-browser. js файл тоже.
exports.onInitialClientRender = () => {
console.log("loaded")
setTimeout(() => {
document.getElementById("___loader").style.opacity = "0"
console.log("loader changed.")
}, 1000)
setTimeout(() => {
document.getElementById("___loader").style.display = "none"
console.log("loader removed")
}, 2000)
setTimeout(() => {
document.getElementById("___gatsby").style.display = "block"
}, 2000)
setTimeout(() => {
document.getElementById("___gatsby").style.opacity = 1
}, 3000)
}
Как я могу оптимизировать это лучше, чтобы задержка не была заметна в стиле svg?