我正在使用节点12(实验模块)和节点3(npm),并且我无法使Imports能够用于OrbitControls.js。我将index.js作为“脚本:模块”。
这两个ES6导入都不起作用
我尝试将OrbitControls.js文件从js文件夹中复制出来(从三个根文件夹中复制),并将其放置在index.js旁边,然后添加
import {OrbitControls} from "./OrbitControls.js"
它不起作用,我收到错误消息
未捕获的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导入。
答案 0 :(得分:2)
我还没有使用实验模块,但是您的第二个示例应该是
import { OrbitControls } from "three/examples/jsm/controls/OrbitControls";
在/
之前没有three
;
如果这不起作用,您可以尝试将OrbitControls.js源代码from here复制粘贴到您自己的文件夹中。
import { OrbitControls } from "./myFolder/OrbitControls";
如果这可行,则可能是您的node_modules
安装问题。