我只是在html中删除了指向threejs的CDN链接,而是使用npm导入了threejs。我正在用webpack来编译所有的东西。然而,虽然在编译时没有错误消息,但我的webapp会中断并返回一个错误,即THREE is not defined。下面是我使用的import语句:
import * as THREE from 'three';
import OrbitControls from 'three/examples/js/controls/OrbitControls.js'
import OBJLoader from 'three/examples/js/loaders/OBJLoader.js'
浏览器控制台错误将我引向OrbitControls源代码,当我注释掉它的导入语句时,它会将我引向OBJLoader源代码。不是我的代码,但是如果你需要查看它来帮助调试,请让我知道。当我注释掉这两个输入语句,只留下import * as THREE from 'three';
时,页面加载没有错误,尽管我导入的3d模型没有渲染。任何帮助都将不胜感激。
发布于 2021-05-21 03:38:12
尝试使用这些导入:
import { OrbitControls } from 'three/examples/jsm/controls/OrbitControls.js'
import { OBJLoader } from 'three/examples/jsm/loaders/OBJLoader.js'
请注意,您现在从包含ES6模块的jsm
目录导入。
https://stackoverflow.com/questions/67626455
复制相似问题