Передача переменной в дочерний компонент в Vue.js - PullRequest
0 голосов
/ 03 января 2019

Здравствуйте, снова переполнение стека. Я хотел бы передать переменную дочернему компоненту в Vue.

Я уже провел небольшой поиск и попробовал следующее, основываясь здесь stackoverflow

Я также попробовал метод created:, заменив mounted:

Есть мысли?

Вот мой родительский компонент

Subcribe.vue

<template>
    <div>
        <h1>Subscribe with Stripe</h1>
        <StripeSubscriptions :subscription="subscriptionType"></StripeSubscriptions>
    </div>
</template>

<script>
    import StripeSubscriptions from '../../includes/StripeSubscriptions.vue';

    export default {
        data(){
            return {
                subscriptionType: "Monthly"
            };
        },
        components: {
            StripeSubscriptions
        }
    }
</script>

дочерний компонент

StripeSubscribe.vue

<template>
    <div>
        <div ref="card"></div>
        <button v-on:click="purchase">Purchase</button>
    </div>

</template>

<script>
    export default {
        props: ['subscription'],
        mounted: function () {
            this.logThis();
        },
        methods: {
            logThis: function (){
                console.log(this.subscription);
            },
        }
    };
</script>

Вышеуказанный вывод консоли: here: undefined

1 Ответ

0 голосов
/ 03 января 2019

Возможно, вы неправильно указали на это.В контексте JavaScript это относится к непосредственному контексту, но реквизиты Vue привязаны к контексту класса / компонента.

Чтобы предотвратить это, сохраните ссылку this на другую переменную или используйте функцию стрелки

methods: {
            logThis: () => {
                console.log(this.subscription);
            },
        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...