2017-07-19 146 views
2

我想加载一个对象(.obj)文件使用three.js和反应(与react-three-renderer),但得到一个 我的代码看起来像︰three.js OBJLoader没有反应加载

import React from 'react'; 
import ReactDOM from 'react-dom'; 
import React3 from 'react-three-renderer'; 
import TrackballControls from './TrackballControls'; 
import * as THREE from 'three'; 
import * as OBJLoader from 'three-obj-loader'; 
OBJLoader(THREE); 

class MyClass extends React.Component { 
... 
    render() { 
    ... 
    const objLoader = new THREE.OBJLoader(); 
    } 
} 

不过,我不断收到:“出口‘OBJLoader’(输入为‘三’)在‘三化’未找到一个主意 任何

回答

1

如此看来,加入this.THREE = THREE到反应组件的技巧(奇怪,呃?)。 所以我的代码目前看起来像:

import React from 'react'; 
import ReactDOM from 'react-dom'; 
import React3 from 'react-three-renderer'; 
import TrackballControls from './TrackballControls'; 
import * as THREE from 'three'; 
import * as OBJLoader from 'three-obj-loader'; 
OBJLoader(THREE); 

class MyClass extends React.Component { 
... 
    render() { 
    ... 
    this.THREE = THREE; 
    const objLoader = new this.THREE.OBJLoader(); 
    } 
}