Задать вопрос
prodavecmacdonalds
@prodavecmacdonalds
коммуницирую

Почему не выполняется computed?

Computed выполняется только когда я наблюдаю компонент в vue devtools

Подробнее
есть страница, а на ней контент(компонент), в нем фильтр(компонент), при выборе селектора со страной фильтр передают id страны основному компоненту, в котором в сomputed через axios подтягиваются товары по id страны. Но после выбора страны в селекторе сomputed если я не выберу компонент контент в vue devtools
computed: {
            coinYears () {
                if(this.coinsData.length>0)
                return this.coinsData
                .map((x) => x.year) // для каждого элемента из массива объектов data возвращаем год
                    .reduce((r, activeYear) => [...new Set(r.concat(activeYear))], []) // оставляем только уникальные значения
                    .map((activeYear) => { // для каждого элемента из полученного массива
                        // console.log(sadasdasd);                        
                        if((activeYear >= this.periodsStart) && (activeYear <= this.periodsEnd)) 
                            return { // возвращаем 
                                'year': activeYear, 
                                'coins': coinsDataByYear(activeYear, this.coinsData)
                            }
                        else
                            return false
                    
                })
            },
            getCountrys () {
                if(this.countryId)
                axios.post('/admin/coins/filter',
                        {"country_id": this.countryId}
                    )
                    .then(
                        response => (
                            this.coinsData = response.data
                        )
                    ); 
                    return this.coinsData;
            },
        },
  • Вопрос задан
  • 191 просмотр
Подписаться 1 Простой 2 комментария
Помогут разобраться в теме Все курсы
  • HTML Academy
    Vue.js 3 — разработка клиентских приложений
    1 месяц
    Далее
  • Академия Эдюсон
    Frontend-разработчик
    9 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
Решения вопроса 1
0xD34F
@0xD34F Куратор тега Vue.js
Странному коду - странное поведение. Разбираться в причинах которого как-то не очень интересно. Ну не должен getCountrys быть вычисляемым свойством, не должен. Это метод, или, возможно, watcher. Переписывайте код.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы