TypeError: Невозможно прочитать свойство _wrapper из неопределенного - PullRequest
0 голосов
/ 04 ноября 2019

Я пытаюсь обновить данные реквизита, отправленные компоненту одним нажатием кнопки, до одного компонента в vue.

Нажатие кнопки запускает действие, загружающее данные из конфигурации. Но это выдает ошибку и сообщение об ошибке не было ясно. Найдите ошибку здесь https://imgur.com/a/0psUWKr

Если я передаю данные напрямую без действий кнопки, все работает нормально.

Мой главный компонент


<template>
  <div>
    <MyList v-if="listItems" :elements="listItems"/>
    <button @click="showSlider">Show Slider</button>
  </div>
</template>

<script>
// imports the components and config files

export default {
  name: "ListView",
  data() {
    return {
      listItems: []
    };
  },
  components: {
    MyList
  },
  methods: {
    showSlider: function() {
         this.listItems.push(configs['elements'])
    },
</script>

ПРИМЕЧАНИЕ: Если я предоставляю данные listItems по умолчанию, он работает

И MyList файл


<template>
  <ul>
    <li v-for="each in elements" :key="each.id">
      {{each.name}}
    </li>
  </ul>
<template>

<script>
// imports the components and config files

export default {
  name: "MyList",
  props: {
    elements: {
      type: Array
    }
  }
</script>

1 Ответ

0 голосов
/ 11 ноября 2019

Должно работать, в общем. Но в моем случае проблема заключается в push в следующей функции.

 showSlider: function() {
     this.listItems.push(configs['elements'])
},

Сохранение того же самого из Vuex и использование диспетчера для обновления того же самого работает, как талисман. И я использую свойство computed, чтобы загрузить состояние из vueX и передать его в MyList

...