Внешние файлы JS, работающие в Angular 6, но не в 7
Я пытаюсь запустить эти файлы javascript в приложении Angular 7. Я успешно запустил его в приложении Angular 6, выполнив следующие основы:
Скопировал файлы.js в приложение, сохранив файлы веб-работника (
load_stl.min.js
а такжеparser.min.js
) в корневом каталоге и остальные файлы вassets/scripts
,Добавьте файлы.js в мой массив scripts в angular.json в этом рабочем порядке.
"scripts": [ "src/assets/scripts/three.min.js", "src/assets/scripts/webgl_detector.js", "src/assets/scripts/Projector.js", "src/assets/scripts/CanvasRenderer.js", "src/assets/scripts/OrbitControls.js", "src/assets/scripts/stl_viewer.min.js" ]
Добавил необходимый код в шаблон:
html <div id="stl_container"></div>
Наконец, ссылка
stl_viewer.min.js
из компонента:declare var StlViewer:any; var stl_viewer = new StlViewer(document.getElementById('stl_container'), { models: [ {id:0, filename:"assets/_somefile.stl"} ] });
Как я уже упоминал, он отлично работает в Angular 6, но при запуске из Angular 7 я получаю ошибку, как только javascript инициализируется из компонента - и я не понимаю, почему.
ПОЛУЧИТЕ http://localhost:4300/load_stl.min.js 404 (не найден)
Я не обязательно уверен, что разница в версии может быть проблемой
0 ответов
Оказывается, в классе StlViewer есть дополнительное свойство, называемое load_three_files
который принимает в качестве аргумента путь ко всем файлам javascript.
Переезд parser.min
а также load_stl.min
в папку assets/script и добавив load_three_files: "assets/scripts/"
в StlViewer исправил.