¿Representar el elemento three.js en React?

Estoy tratando de hacer un componente React que represente una escena three.js. Sin embargo, cada vez que intento montar el componente en lugar de ver cualquier tipo de escena renderizada, solo veo el texto[object HTMLCanvasElement] siendo mostrado.

Aquí está mi componente:

import React from 'react';
import * as THREE from 'three';

class Cube extends React.Component {

    constructor() {
        super();
        this.animate = this.animate.bind(this);
        this.scene = new THREE.Scene();
        this.geometry = new THREE.BoxGeometry(200, 200, 200);
        this.material = new THREE.MeshBasicMaterial({
            color: 0xff0000,
            wireframe: true
        });
        this.mesh = new THREE.Mesh(this.geometry,this.material);
        this.scene.add(this.mesh);
        this.renderer = null;
        this.camera = null;
    }

    render() {
        if (typeof window !== 'undefined') {
            this.camera = new THREE.PerspectiveCamera(75, window.innerWidth / window.innerHeight, 1, 10000);
            this.camera.position.z = 1000;
            this.renderer = new THREE.WebGLRenderer();
            this.renderer.setSize(window.innerWidth, window.innerHeight);
            return (
                <div dangerouslySetInnerHTML={{__html: this.renderer.domElement}}></div>
            );
        } else {
            return null;
        }
    }
}

export default Cube;

Obtuve el código delpágina del paquete de tres npm e intenté convertirlo en un componente React. ¿Qué estoy haciendo mal que hace que la escena no se procese?

Respuestas a la pregunta(1)

Su respuesta a la pregunta