Vue渲染道具在插槽中的组件中

时间:2019-12-17 14:45:41

标签: vue.js components slot vue-props

我有两个组成部分:

在第一部分(FirstComponent.vue)中,我有:

    <RightModal>
        <span slot="body">
            {{ worker }}
            <input type="checkbox" @click="selectCheckbox(worker.id)">
        </span>
    </RightModal>
    props: {
        worker: {
            type: Object,
            required: true,
        },
    },
    selectCheckbox( id ) {
        this.$root.$emit('runShowWorker', id);
    },

SecondComponent.vue中,我有:

    mounted() {
        this.$root.$on('runShowWorker', id => {
            showWorker(id)
            .then(res => {
                this.worker = res.data;
            })
            .catch(error => {
                console.error(error);
            });
        });
    },

this.worker发送数据库中的新数据。我使用道具发送数据:

SecondComponent.vue中:

    <FirstComponent :worker="worker" />

我在worker中遇到FirstComponent.vue的问题。我发送了新数据,但是该道具无法渲染。我该如何解决?

编辑:

如果我尝试推送空数据:.then(res => { this.worker = null })。 然后我有错误:

  

无效的道具:道具“工人”的类型检查失败。预期对象,   空了

但在工作人员的页面数据中不会消失。

0 个答案:

没有答案