vue内置组件component的使用

<keep-alive>
  <component
    type="type"
    :is="componentName"
    :isEdit="isEdit"
    :ref="componentName"
    @allFormSave="allFormSave"
    :infoData="infoData"
    @nextClick="nextClick"
    @cancleData="cancleData"
    @hello="hello"
  >
  </component>
</keep-alive>

<component/>组件可以根据is的值动态渲染不同的组件

import BasicInfo from './hallComponents/hallWraper/basicInfo.vue'
import DetailInfo from './hallComponents/hallWraper/detailInfo.vue'
import SelfServiceInfo from './hallComponents/hallWraper/selfServiceInfo.vue'

export default {
  name: 'BasicSetting',
  filters: {},
  components: {
    BasicInfo,
    DetailInfo,
    SelfServiceInfo
  },
  methods: {
    checkComp (value) {
      const componentMap = {
          0: 'BasicInfo',
          1: 'DetailInfo',
          2: 'SelfServiceInfo'
        }
      this.componentName = componentMap[value]
    },
    // 子组件调用的方法
    hello (emitValue) {
      console.log(emitValue, '子组件传过来的值')
    }
  }
}

component组件和子组件和普通的父子组件一样,可以通过$emit和props进行父子组件之间的传值

posted @   嘿!那个姑娘  阅读(768)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示