Задать вопрос
lipasite
@lipasite

Как устранить ошибку Vue-компонента Error in mounted hook: «ReferenceError: post_id is not defined»?

Привет! Пишу Vue-компонент для отображения кол-ва лайков (Laravel 5.5 + Vue v.2.5.16):
возникает ошибка
Error in mounted hook: "ReferenceError: post_id is not defined"

Код компонента:
<template> 
        <span>
            <i class="fa fa-heart"></i> {{ likescount }}
        </span>    
 </template> 

<script>
    import { bus } from '../bootstrap';
    import 'vuejs-noty/dist/vuejs-noty.css'
    export default {
        props: ["post_id"],
        
        data: function() {
            return { 
                likescount: 0,
            }
        },
        
        created(){
            bus.$on('postliked', (data) => {
               this.updatelikescount(post_id); 
            });
        },
        mounted : function() {
            this.updatelikescount(post_id);
        },
        
        methods: {   
            updatelikescount(post_id) {
            axios
                .get('/blog/post/likecount/' + post_id)
                .then(response => {
                    this.likescount = response.data.data[0][0]
                })        
                .catch(response => console.log(response.data));
             },       
        }
    };
</script>

Код blade:
<likepostcount 
    :post_id={{ $post->id }}
></likepostcount>

При открытии VueDevTools компонент и свойство видимы, значение post_id корректно заполнено.
Но ошибка не позволяет отобразить кол-во лайков, они остаются неизменными = 0.
  • Вопрос задан
  • 2423 просмотра
Подписаться 1 Простой 2 комментария
Решения вопроса 1
lipasite
@lipasite Автор вопроса
Решил так:
props: {
  post_id: {
    type: Number,
    default: () => {}
  }
},
mounted : function() {
  this.updatelikescount(this.post_id);
},
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

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