本文介绍了three.js OBJLoader没有加载反应的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试加载一个对象(.obj)文件以与three.js一起使用并做出反应(使用react-three-renderer),但是得到一个
我的代码看起来像:
I am trying to load an object (.obj) file to use with three.js and react (with react-three-renderer), yet get an My code looks like:
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();
}
}
但是,我继续得到:export'OBJLoader在'三'中找不到'(导入为'THREE')
任何有想法的人?
However, I keep on getting: "export 'OBJLoader' (imported as 'THREE') was not found in 'three'Anyone with an idea?
推荐答案
所以似乎在反应组件中添加 this.THREE = THREE
就可以了(很奇怪,呃?)。
所以我的代码目前看起来像:
So it seems that adding this.THREE = THREE
to the react component does the trick (weird, eh?).So my code currently looks like:
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();
}
}
这篇关于three.js OBJLoader没有加载反应的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!