封装全局组价

本文介绍了如何在Vue中封装组件,将其放在src/components下并使用具名插槽增加自定义内容。通过在main.js中全局注册组件,实现多个组件间的复用。此外,还探讨了使用Vue.use()注册全局组件的方法,包括创建统一注册入口文件和在main.js中应用。这种做法简化了组件引入和注册的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

封装在哪里:

    1.我们建议封装在src下面components下面.vue文件

    2.引入 solt 插槽让用户能自定义内容

   3. 就可以在对应的组件 引入 注册  以标签形式使用了(这一步呢比较麻烦 我们后面有更好的办法)

     <template>
            左侧具名插槽
       <div class="left">
          solt插槽   name是对应的名称
          <slot name="left">
              <span>文字区域</span>
          </slot>
       </div>
        
            右侧具名插槽
      <div class="right">
           solt插槽   name是对应的名称
        <!-- 右侧 -->
        <slot name="right">
          按钮区域
         </slot>
     </div>
 
</template>

用户自定义内容:

<template>
  <div class="employees-container">
    <div class="app-container">

        这个是注册组组件 以标签形式使用
      <page-tools>
        <!-- 插入到left插槽位置 -->
                在template上 插入对应的位置 要以#对应name
        <template #left>
          <span>本月: 社保在缴 公积金在缴  自定义内容 会显示到对应你name  left 的位置</span>
        </template>
         <!-- 插入到right插槽位置 -->
        <template #right>
          <el-button type="warning" size="small">导入excel</el-button>
          <el-button type="danger" size="small">导出excel</el-button>
          <el-button type="primary" size="small">新增员工</el-button>
        </template>
      </page-tools>
      这个是注册组组件 以标签形式使用
        
    </div>
  </div>
</template>
<script>
        导入
  import PageTools from '@/components/PageTools'
  export default {
        注册
      components:{
         PageTools
      }
  }
</script>

封装全局组件的好处:

        能在多个组件中使用

定义全局组件的格式: 

//引入组件
  import  组件名字  from '@/component/x x x'
//注册组件
  Vue.component('组件名字',组件名字)

我们可以直接在main.js中直接注册全局(缺点: 以后很多全局组件我们还是要 引入 注册  )

        此时我们就不需要 引入 注册 我们可以直接的在对应的组件以标签形式使用了

//导入组件
import PageTools from '@/components/PageTools'

Vue.component('给组件取得名字', PageTools)

最终完善解决方案:

       掌握Vue.use()的用法,能用它来注册全局组件 

       它是Vue提供一个静态方法, 用来向Vue注册插件(增强vue的功能)。文档: https://cn.vuejs.org/v2/api/#Vue-use

格式:

1.Vue.use 可以接收一个对象,Vue.use(obj)

2.对象obj中需要提供一个 install 函数

3.在 Vue.use(obj) 时,会自动调用该 install 函数,并传入 Vue构造器

步骤:(优点:在注册组件在 index唯一出口 导入进来 使用Vue.component()直接注册即可)

1.提供统一注册的入口文件 src/componets/index.js

2.然后再main.js中注册插件

导入统计路径下的组件 
import PageTools from './PageTools'

  // 进行注册
export default {
  install(Vue) {
    
    Vue.component('PageTools', PageTools)
  }
}

在main.js注册插件:

组件唯一出口  index.js 可以省略 默认
import Components from './components'

Vue.use(Components)

好了 我们下次见

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值