app.js:63 Неперехваченная ошибка ссылки: GLTFLoader не определен

#javascript #three.js

#javascript #three.js

Вопрос:

Когда я вызываю это в three.js const loader = new GLTFLoader(); выдает эту ошибку app.js:63 Неперехваченная ошибка ссылки: GLTFLoader не определен. это импорт в index.html.но получил эту ошибку

 <script src="./three.min.js"></script>
<script src="./OBJLoader.js"></script>
<script src="./GLTFLoader.js"></script>
<script src="./app.js"></script>
 

Ответ №1:

Подобный код const loader = new GLTFLoader(); работает только в том случае, если вы импортируете GLTFLoader его как модуль ES6 с помощью import инструкции. При этом GLTFLoader не является частью THREE пространства имен.

Поскольку вы используете three.min.js , вы используете не рабочий процесс на основе модуля, а глобальные сценарии. Это означает GLTFLoader , что доступно только в THREE пространстве имен. Поэтому изменение вашего кода на следующий должно устранить проблему:

 const loader = new THREE.GLTFLoader();