2017-07-19 40 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(); 
    } 
}