JSFiddle - React, Tailwind, and code Playground

HTML

<script src="//cdn.rawgit.com/mrdoob/three.js/master/build/three.min.js"></script>
<script src="//cdn.rawgit.com/mrdoob/three.js/master/examples/js/controls/OrbitControls.js"></script>
<script src="//cdn.rawgit.com/mrdoob/three.js/master/examples/js/libs/dat.gui.min.js"></script>

JavaScript

var camera, scene, renderer;
var geometry, objects;
var mesh;

init();
animate();

function init() {

  camera = new THREE.PerspectiveCamera( 45, window.innerWidth / window.innerHeight, 1, 15000 );
  camera.position.z = 500;

  scene = new THREE.Scene();
  scene.background = new THREE.Color( 0x222222 );
  scene.fog = new THREE.Fog( 0x000000, 1, 15000 );

  var light = new THREE.PointLight( 0xff2200 );
  light.position.set( 100, 100, 100 );
  scene.add( light );

	var light = new THREE.AmbientLight( 0x111111 );
  scene.add( light );

	var geometry = new THREE.BoxGeometry( 100, 100, 100 );
	var material = new THREE.MeshLambertMaterial( { color: 0xffffff, morphTargets: true } );

	// construct 8 blend shapes
  
  for ( var i = 0; i < 8; i ++ ) {
  
  	var vertices = [];

		for ( var v = 0; v < geometry.vertices.length; v ++ ) {
		 
     vertices.push( geometry.vertices[ v ].clone() );
     
     if ( v === i ) {
     
     	vertices[ vertices.length - 1 ].x *= 2;
			vertices[ vertices.length - 1 ].y *= 2;
			vertices[ vertices.length - 1 ].z *= 2;

			}

		}

		geometry.morphTargets.push( { name: "target" + i, vertices: vertices } );

	}

	mesh = new THREE.Mesh( geometry, material );

	scene.add( mesh );

	//

	var params = {
		influence1: 0,
   };

	var gui = new dat.GUI();

	var folder = gui.addFolder( 'Morph Targets' );
  folder.add( params, 'influence1', 0, 1 ).step( 0.01 ).listen().onChange( function( value ) { mesh.morphTargetInfluences[ 0 ] = value; } );				
  folder.open();
			
	var update = function() {
  	requestAnimationFrame(update);			
    var time = Date.now() * 0.003;
    var value = 0.5 * Math.sin( 0.5 * time ) + 0.3;
   	mesh.morphTargetInfluences[ 0 ] = params.influence1 = value; // CHANGED
  };
    
    update();		

	//

  renderer = new THREE.WebGLRenderer();
  renderer.setPixelRatio( window.devicePixelRatio );
  renderer.setSize( window.innerWidth, window.innerHeight );
  document.body.appendChild( renderer.domElement );

	//

	controls = new...