ThreeJS / Angular-找不到OBJLoader

时间:2019-01-15 20:03:00

标签: angular three.js

我正在尝试在Angular中使用ThreeJS,尤其是在OBJLoader中渲染.obj文件。

但是,我遇到了错误

  

在“三个”中找不到导出的“ OBJLoader”(导入为“三个”)

这是我的代码部分

import * as THREE from 'three';
import * as OBJLoader from 'three-obj-loader';
OBJLoader(THREE);
console.log(typeof THREE.OBJLoader);





const objLoader = new THREE.OBJLoader();

objLoader.load(
  // resource URL
  '../../assets/icon/threed/helicopter.obj',
  // called when resource is loaded
  function ( object ) {

    this.scene.add( object );

  },
  // called when loading is in progresses
  function ( xhr ) {

    console.log( ( xhr.loaded / xhr.total * 100 ) + '% loaded' );

  },
  // called when loading has errors
  function ( error ) {

    console.log( 'An error happened' );

  }
);

1 个答案:

答案 0 :(得分:0)

如果使用

导入

import * as OBJLoader from 'three-obj-loader';

您可以这样实现:

const objLoader = new OBJLoader();

没有理由尝试将其放入THREE名称空间中。另外,我认为在第3行中执行OBJLoader(THREE);并没有真正做任何事情。