Я немного новичок в единстве, и я впервые создаю тему здесь, так что, возможно, я задаю глупый вопрос.
Я создаю веб-сайт, используя реакцию, и на части этого веб-сайта есть игра, в которой используется единство. Проблема, с которой я столкнулся, заключается в том, что я использую реакцию для этого веб-приложения, которое вызывает ошибки, когда единство перезагружается с помощью реакции.
обычно unity загружается только один раз файлом unityloader.js. Однако то, как я настраиваю свое приложение для реагирования каждый раз, когда загружается определенный реагирующий компонент, этот фрагмент кода вызывает загрузку единства
componentWillMount() {
const script = document.createElement("script");
script.src = "Release/UnityLoader.js";
script.async = true;
document.body.appendChild(script);
}
В первый раз, когда я выполняю эту загрузку, все работает нормально, но когда я повторно посещаю страницу, содержащую этот компонент unitywebgl, единство дает сбой, и я получаю следующую ошибку.
Uncaught TypeError: Cannot read property 'apply' of undefined
at Object.dynCall (blob:http://localhost:8000/11f3d503-5e8a-473e-851f-2373f9cb5de6:1)
at Object.handlerFunc (blob:http://localhost:8000/11f3d503-5e8a-473e-851f-2373f9cb5de6:1)
at jsEventHandler (blob:http://localhost:8000/11f3d503-5e8a-473e-851f-2373f9cb5de6:1)
Может я что-то делаю не так и использую какой-то странный способ инициализировать единство. Однако для этого веб-приложения важно часто инициализировать и перезагружать единство. Может быть, есть какая-то функция в unityloader.js, чтобы дать ему холст и вручную попросить его перезагрузить, или я иду в неправильном направлении?