Использование CDN (Content Delivery Network) позволяет быстро интегрировать библиотеку A-Frame в проект без установки дополнительных пакетов. Для этого достаточно добавить ссылку на последнюю версию библиотеки в HTML-документ:
<script src="https://aframe.io/releases/1.4.2/aframe.min.js"></script>
<head> или перед закрывающим тегом
</body>.A-Frame доступен как npm-пакет, что позволяет интегрировать его в современный фронтенд-стек и управлять зависимостями через пакетный менеджер:
npm install aframe
После установки библиотеку можно импортировать в JavaScript-код:
import 'aframe';
package.json.| Критерий | CDN | npm-пакет |
|---|---|---|
| Скорость подключения | Очень быстро, одна строка | Медленнее, требует сборки |
| Контроль версий | Ограниченный, зависит от URL | Полный, через package.json |
| Зависимость от интернета | Да | Нет |
| Интеграция с современными сборщиками | Сложная | Полная |
| Масштабируемость | Ограниченная | Высокая |
| Кэширование | Автоматическое через CDN | Зависит от сборки и браузера |
Использование npm также упрощает добавление сторонних компонентов A-Frame, например, систем частиц, анимаций или VR-интерактивности, которые распространяются как отдельные пакеты.
При подключении через CDN важно явно указывать номер версии:
<script src="https://aframe.io/releases/1.4.2/aframe.min.js"></script>
Без этого можно случайно получить несовместимую версию, что приведёт к ошибкам в существующем коде.
При работе с npm версии фиксируются в package.json:
"dependencies": {
"aframe": "1.4.2"
}
Это гарантирует, что сборка будет стабильной, и обновления не нарушат совместимость.
При использовании npm A-Frame легко интегрируется с:
react-aframe или
собственные обертки.@types/aframe.CDN-подключение чаще используют без сложных сборщиков, что подходит для быстрого прототипирования и статических страниц.
Хотите, я могу подготовить отдельный подробный пример проекта с обеими конфигурациями, чтобы показать разницу на практике?