Конвертировать объект javascript в массив - выпадающий список Vuetify - PullRequest
0 голосов
/ 25 февраля 2020

Я пытаюсь преобразовать и заполнить раскрывающийся список значениями из объекта, но он не работает должным образом.

Backend равен Express. js с Sequelize, где я вызываю некоторые MySQL процедура.

Вот короткое console.log возвращенного объекта: (4) [{…}, {…}, {…}, {…}, __ob__: Observer], и в браузере это выглядит так: [{"dropdown_value":"2000"},{"dropdown_value":"2002"},{"dropdown_value":"2012"},{"dropdown_value":"2017"}]

Я пытаюсь использовать эти данные для ввода выпадающего vuetify, как это:

created() {
  this.$vuetify.theme.dark = false
  this.getDropdownData()
},
data: () => ({
  drawer: null,
  dropdownValues: [],
  /* eslint-disable */
  alignmentz: 'start',
  dense: false,
  justifyz: "end",
}),
methods: {

  async getDropdownData() {

     try {
       this.dropdownValues = (await DataService.getDropdownData()).data
      // this.dropdownValues = new Array("Ivan", "Marko")
       console.log(this.dropdownValues)
     } catch (error) {

       console.log(error)
     }
  },

}

И код vuetify:

<v-col cols="12" lg="2" md="2" sm="6" xs="6">

        <v-select


        :items="dropdownValues"
        item-text="state"
        item-value="abbr"
        label="Select"
        persistent-hint
        return-object
        single-line

      ></v-select>

    </v-col>

Когда я нажимаю на выпадающий список, я получаю [Объект объекта], а также, vue предупреждение, где элементы vuetify ожидают использовать массив, не объект!

Я пытался преобразовать его в бэкэнд, но он работает неправильно. Когда я раскомментирую эту строку: // this.dropdownValues = new Array("Ivan", "Marko"), она работает нормально. Я что-то упустил?

...