Правильный формат объекта для v-для

#vue.js #object #vuejs2 #v-for

Вопрос:

Я хотел бы отобразить каждый ответ, который был перетасован, melange() но reponse ничего не вернул. Я не знаю, что не так с моим v-для. Может быть, это формат моего объекта.

              <label v-bind:key="key" class="bg-white block mt-4 border border-gray-300 rounded-lg py-2 px-6 text-lg"
                v-for="reponse,key in reponseQuestion(questions[currentQuestion].idQuestion)" 
                <div class="fas fa-check" v-bind:id="key" 
                v-bind:value="reponse" 
                v-on:click="repondu(key)"
                v-bind:disabled="questionSelectionne != ''">
                    {{ reponse }}
                </div>
            </label>


        reponseQuestion(idQuest) {
            this.$axios
                .get("http://localhost:4000/api/answers/"   idQuest)
                .then((response) => {
                    console.log(this.melange(response.data[0]))
                    return this.melange(response.data[0])
                })
                .catch((error) => {
                    console.log(error);
                })
        },
        melange(obj) {
            // new obj to return
            let newObj = {};
            // create keys array
            var keys = Object.keys(obj);
            // randomize keys array
            keys.sort(function () {
                return Math.random() - 0.5;
            });
            // save in new array
            keys.forEach(function (k) {
                newObj[k] = obj[k];
            });
            return newObj
        }
 

Результат повторной проверки() :

 {reponse4: "8 s 36", reponse3: "8 s 42", reponse2: "9 s 72", reponse1: "9 s 58"}
 

Заранее спасибо

Ответ №1:

Вам нужны фигурные скобки (response,key) in responseQuestion , чтобы переопределить приоритет оператора.

Комментарии:

1. Я добавляю фигурные скобки вокруг запроса return {newObj} ответа и меняю букву v, потому reponse,key in reponseQuestion(questions[questionActuel].idQuestion)[newObj] что вы это имеете в виду ?

2. Я имею в виду, что без фигурных скобок оператор запятой между response и key имеет более высокий приоритет, чем in ключевое слово.