L
L
LilBorsch2020-03-04 15:44:59
JavaScript
LilBorsch, 2020-03-04 15:44:59

Why doesn't the data in the Vue template change?

<template>
    <section class="messages">
        <div class="message">{{ message }}</div>
    </section>
</template>

<script>
export default {
    data: () => ({
        message: 'mess'
    }),
    beforeCreate () {
        this.$root.$on('msg', function (message) {
            this.message = message
        })
    }
}
</script>


When this.$root.$emit('msg', message)in the Messages component, the transmitted message is read and successfully written to data. But the template doesn't change. What the hell is the problem?

Answer the question

In order to leave comments, you need to log in

2 answer(s)
L
LilBorsch, 2020-03-04
@LilBorsch

<template>
    <section class="messages">
        <div class="message">{{ message }}</div>
    </section>
</template>

<script>
export default {
    data: () => ({
        message: ''
    }),
    beforeCreate () {
        this.$root.$on('msg', message => {
            this.message = message
        })
        
    }
}
</script>

A
Anton Anton, 2020-03-04
@Fragster

Maybe it's still like that?

data() {
  return {
        message: 'mess'
    };
},

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question