Javascript 未定义three.js/OrbitControls

Javascript 未定义three.js/OrbitControls,javascript,three.js,Javascript,Three.js,当我尝试导入OrbitControls.js时,请执行以下操作: 我收到模块外的无法使用导入语句错误 因此,我使用: 但这次我得到了: ReferenceError: OrbitControls is not defined HTML正文: <body> <div id="page-wrapper"> <h1>Open Spaceport Container (.drc):</h1>

当我尝试导入OrbitControls.js时,请执行以下操作:

我收到模块外的
无法使用导入语句
错误

因此,我使用:

但这次我得到了:

ReferenceError: OrbitControls is not defined
HTML正文:

<body>
    <div id="page-wrapper">
        <h1>Open Spaceport Container (.drc):</h1>
        <div>
            <input type="file" id="fileInput">
        </div>
    </div>
    <div>
        <pre id="decoderType"><pre>
    </div>
    <div>
        <pre id="fileDisplayArea"><pre>
    </div>
    <script src="https://cdn.rawgit.com/mrdoob/three.js/dev/build/three.min.js"></script>
    <script src="DRACOLoader.js"></script>
   <script src="geometry_helper.js"></script>
   <script type="module" src="OrbitControls.js"></script>
       <script>
        "use strict"
        


      // Configure decoder and create loader.
          var textureLoader = new THREE.TextureLoader();
          const loadManager = new THREE.LoadingManager();
...

打开Spaceport容器(.drc):
“严格使用”
//配置解码器和创建加载程序。
var textureLoader=new THREE.textureLoader();
const loadManager=new THREE.LoadingManager();
...

您将ES6模块与无效的非模块代码混用。这样做:


将*作为三个源导入'https://cdn.jsdelivr.net/npm/three@0.121.1/build/three.module.js';
从导入{DRACOLoader}'https://cdn.jsdelivr.net/npm/three@0.121.1/examples/jsm/loaders/DRACOLoader.js';
从导入{OrbitControls}https://cdn.jsdelivr.net/npm/three@0.121.1/examples/jsm/controls/OrbitControls.js';
//你的实际应用程序代码
//配置解码器和创建加载程序。
const-manager=new-THREE.LoadingManager();
const textureLoader=新的三个.textureLoader(管理器);
我建议您也将自定义的
geometry\u helper.js
转换为ES6模块