Почему мои API-вызовы для моего приложения Vue маршрутизируются через некоторый код в независимой зависимости, vue-query-builder? - PullRequest
0 голосов
/ 29 октября 2018

Я создаю приложение Vue и установил tailwindcss-vue-query-builder, который является моей собственной перекомпоновкой vue-query-builder с некоторыми изменениями стиля для моего приложения. Во время отладки некоторых вызовов API я заметил, что vue-query-builder обнаружил в трассировке стека все мои ошибки. Это пакет, используемый для создания объектов запросов и не имеет ничего общего с фактическими вызовами API. С чего бы мне начать отладку и выяснить, почему это происходит? Вот пример трассировки стека:

Трассировка стека ошибок вызова API

Вот код, указанный в трассировке стека:

    // constructor polyfill
if (!USE_NATIVE) {
  // 25.4.3.1 Promise(executor)
  $Promise = function Promise(executor) {
    anInstance(this, $Promise, PROMISE, '_h');
    aFunction(executor);
    Internal.call(this);
    try {
      executor(ctx($resolve, this, 1), ctx($reject, this, 1)); // line 910 here
    } catch (err) {
      $reject.call(this, err);
    }
  };
  // eslint-disable-next-line no-unused-vars
  Internal = function Promise(executor) {
    this._c = [];             // <- awaiting reactions
    this._a = undefined;      // <- checked in isUnhandled reactions
    this._s = 0;              // <- state
    this._d = false;          // <- done
    this._v = undefined;      // <- value
    this._h = 0;              // <- rejection state, 0 - default, 1 - handled, 2 - unhandled
    this._n = false;          // <- notify
  };
  Internal.prototype = __webpack_require__("dcbc")($Promise.prototype, {
    // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)
    then: function then(onFulfilled, onRejected) {
      var reaction = newPromiseCapability(speciesConstructor(this, $Promise));
      reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;
      reaction.fail = typeof onRejected == 'function' && onRejected;
      reaction.domain = isNode ? process.domain : undefined;
      this._c.push(reaction);
      if (this._a) this._a.push(reaction);
      if (this._s) notify(this, false);
      return reaction.promise;
    },
    // 25.4.5.1 Promise.prototype.catch(onRejected)
    'catch': function (onRejected) {
      return this.then(undefined, onRejected);
    }
  });
  OwnPromiseCapability = function () {
    var promise = new Internal();
    this.promise = promise;
    this.resolve = ctx($resolve, promise, 1);
    this.reject = ctx($reject, promise, 1);
  };
  newPromiseCapabilityModule.f = newPromiseCapability = function (C) {
    return C === $Promise || C === Wrapper
      ? new OwnPromiseCapability(C)
      : newGenericPromiseCapability(C);
  };
}

Похоже, что это веб-пакетная заливка для Promises, но я не совсем понимаю, почему трассировка стека указывает на vue-query-builder и почему может использоваться поли-заливка. Я работаю только над новейшими версиями FF Dev Edition и Chrome. Любая помощь очень ценится.

При дальнейшем исследовании это выглядит как заполнение Babel poly для Promises, а не веб-пакета. Он используется на всех моих Обещаниях. Зачем это нужно использовать, когда браузеры, которые я использую, поддерживают Promises?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...