0

我正在做一个项目,我试图让一个 midi 控制器影响 three.js 场景,但我不断收到错误消息:

Uncaught (in promise) TypeError: midi.inputs is not a function at getInputs (baton.js:110)。

var Baton = function() {

  var API = {};

  var input = null;
  var midi = null;
  var inputName = null;
  var connectCallback = null;

  API.callback = null;

  var inputs = null;
  var outputs = null;


  API.mappings = [];
  var mapCatch = false;
  var mappingOnDeck = {};

  API.connect = function(callback) {
    connectCallback = callback;
    navigator.requestMIDIAccess().then(success, failure);
  };

  API.inputs = function() {
    return inputs;
  };

  API.outputs = function() {
    return outputs;
  };

  var getInputs = function() {
    out = [];
    for (var i in midi.inputs()) {
      out.push( midi.inputs()[i].name );
    }
    inputs = out;
  };

  var getOutputs = function() {
    out = [];
    for (var i in midi.outputs()) {
      out.push( midi.outputs()[i].name );
    }
    outputs = out;
  };

}
4

0 回答 0