Невозможно импортировать OrbitControls с помощью Node 12 ES6 Import - PullRequest
0 голосов
/ 29 мая 2020

Я использую узел 12 (экспериментальные модули) и три (npm), и я не могу заставить импорт работать для OrbitControls. js. У меня index. js как «script: module».

Ни один из этих импортов ES6 не работает

Я пробовал скопировать файл OrbitControls. js из папки js ( из папки root из трех) и поместив его рядом с index. js затем добавив

import {OrbitControls} from "./OrbitControls.js"

Это не сработало, я получаю сообщение об ошибке

Uncaught SyntaxError: Запрошенный модуль './OrbitControls.js' не предоставляет экспорт с именем 'OrbitControls'

Поэтому я также попытался использовать три библиотеки

import {OrbitControls} from "/three/examples/jsm/controls/OrbitControls";

возвращает 404 ошибка, поэтому я попробовал относительный импорт

import {OrbitControls} from "../../node_modules/three/examples/jsm/controls/OrbitControls.js";

снова получил ошибку 404.

Я тоже пробовал (что-то порекомендовал другой пользователь) const OrbitControls = new THREE.OrbitControls, но, похоже, ошибка возникает только из-за импорта ES6.

1 Ответ

2 голосов
/ 29 мая 2020

Я не использовал экспериментальные модули, но ваш второй пример должен читать

import { OrbitControls } from "three/examples/jsm/controls/OrbitControls";

без / перед three;

If это не работает, вы можете попробовать скопировать OrbitControls. js исходный код отсюда в вашу собственную папку.

import { OrbitControls } from "./myFolder/OrbitControls";

Если это работает, то это может быть проблема с вашей установкой node_modules.

...