Не могу получить доступ к реквизитам в NativeScript Vue Modal - PullRequest
1 голос
/ 05 марта 2019

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

this.$showModal(Picker, { props: { list: [

  { name: "Item 1" },
  { name: "Item 2" },
  { name: "Item 3" }

]}});

Модал загружается нормально, и я вижу реквизит в модале, когда я console.log

created: function(){
  console.log(this.list);
}, 

Однако я не могу получить доступ к реквизитам в шаблоне или зациклить их.

 <ListView for="item in listOfItems">
   <v-template>
     <Label :text="item.name" class="listItem" />
   </v-template>
 </ListView>

Я также пробовал:

<ListView :for="item in $props.list">

Мой полный код для модального компонента приведен ниже:

<template>
  <Page>

     <ListView for="item in listOfItems">
       <v-template>
        <Label :text="item.name" class="listItem" />
       </v-template>
     </ListView>

  </Page>
</template>

<script>

  export default {

    props: ["list"],

    created: function(){
      console.log(this.list);
    },

    data(){
      return {
        listOfItems: this.list
      }
    }
  }

</script>

Что я делаю не так?

Ответы [ 3 ]

1 голос
/ 05 марта 2019

Изменить <ListView for="item in listOfItems"> на <ListView for="item in list">

0 голосов
/ 11 июня 2019

<ListView for="item in $props.list">

Удалить двоеточие?

Я забочусь об удалении ненужных : заголовков for и обращаюсь к свойству $props при кодировании с NativeScript-Вью.

0 голосов
/ 12 марта 2019

Не знаю почему, но когда я изменил data () return { так что имена переменных совпадают, {животные: животные, овощи: овощи} это сработало.

Не нужно было делать это для строк или целых чисел, только для объектов.

...