Показать сообщение отдельно
  #1 (permalink)  
Старый 05.01.2020, 03:05
Аспирант
Отправить личное сообщение для SolomonRei Посмотреть профиль Найти все сообщения от SolomonRei
 
Регистрация: 05.04.2018
Сообщений: 77

Vue js передать значение в компонент
Добрый вечер. Подскажите пожалуйста, как передать значение функции в компонент, которое оно возвращает.
Пробую так, возвращает одно true
<template>
  <div id="app">
    <Header
            :questionScore="this.score"
            :questionNumber="this.question_number"
    />
    <Table
            :questionArr="getCorrectQuiz"
            :questionText="getCorrectName"
            v-on:get-unswer="getUnswer($event)"
            v-on:post-query="postQuery()"
    />
  </div>
</template>

export default {
  name: 'app',
  components: {
    Header,
    Table
  },
  props: {
    tempered: {},
    i: {}
  },
  data() {
    return {
      score: 0,
      question_number: 1,
      dataQuiz: [
              {name: 'Как называется самое большое животное ?', id: 1,
        data: [
      {id: 1, text: 'Животное 1', chosen: false, correct: true},
      {id: 2, text: 'Животное 2', chosen: false},
      {id: 3, text: 'Животное 3', chosen: false}

      ]}
      ]
    }
  },
  computed: {
    getCorrectName() {
      this.dataQuiz.forEach((i) => {
        if (i.id === this.question_number) {
          return i.name
        }
      })
      return true
    },
    getCorrectQuiz() {
      this.dataQuiz.forEach((i) => {
        if (i.id === this.question_number) {
          return i.data
        }
      })
      return true
    },
  },
  methods: {
    getUnswer(id) {
      this.dataQuiz.forEach((item) => {
        if (item.id == id && item.chosen === false) item.chosen = true
        else item.chosen = false
        //Решение, если надо выбрать несколько ответов
        // else if (item.id == id && item.chosen === true) item.chosen = false
      })
    },
    postQuery() {
      this.dataQuiz.forEach((item) => {
        if (typeof item.correct !== "undefined" && item.chosen === true) {
            this.score++
          this.question_number++
        }
      })
    }
  }
}


Проблема с функцией getCorrectQuiz
через console.log(данные показываются), делаю return i.data
не фурычит, возвращает true.

я бы убрал return true, но тогда ругается eslint
Ответить с цитированием