将变量传递给Vue.js中的子组件

时间:2019-01-03 12:26:18

标签: vue.js vuejs2

你好,再次堆栈溢出。我想将变量传递给Vue中的子组件。

我已经做了一些搜索,并尝试从此处stackoverflow

进行以下操作

我还尝试了Dim src As Range Dim des As Range With Sheets(1) Set src = .Range("a1:a3") Set des = .Range("a15") des.Resize(src.Rows.Count, src.Columns.Count).Value = src.Value src.Clear End With 方法来代替created:

有什么想法吗?

这是我的父组件

Subcribe.vue

mounted:

子组件

StripeSubscribe.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>

上述控制台输出为: <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>

1 个答案:

答案 0 :(得分:4)

您似乎对此有错误的引用。在JavaScript上下文中,这是指直接上下文,但是Vue道具与类/组件的上下文相关。

为防止这种情况,请将this的引用存储到另一个变量中,或使用箭头函数

methods: {
            logThis: () => {
                console.log(this.subscription);
            },
        }