Vue и Stripe, вызывающие ошибку Invalid Dom Element. Но элемент DOM правильно отображается - PullRequest
0 голосов
/ 07 января 2019

Я пытаюсь объединить элементы полосы в приложении vue. Я успешно сделал это ранее. Но теперь я пытаюсь сделать это снова в цикле v-for.

Я убедился, что элемент stripe загружается только после рендеринга элемента Dom. Элемент Dom находится в цикле v-for. За пределами этого цикла он работает нормально. Но внутри цикла я получаю ошибку:

Ошибка: недопустимый элемент DOM. Обязательно вызовите mount () с допустимым элементом или селектором DOM.

Это странно. Когда я записываю элемент DOM перед монтажом Stripe Element. Вместо возврата элемента он возвращает массив, содержащий элемент. Если я пытаюсь получить доступ к этому массиву, я получаю ту же ошибку.

Если я регистрирую рабочую версию без v-for, я получаю элемент, а не массив. Есть идеи, что здесь происходит? Вот соответствующий код:

  <div>
    <div ref="card" class="card-input"></div>
    <button v-on:click="purchase(i)">Purchase</button>
  </div>

И JS

 mounted () {
   card = elements.create('card')
   console.log(this.$refs.card)
   card.mount(this.$refs.card)
 }
...