我是靠谱客的博主 搞怪曲奇,最近开发中收集的这篇文章主要介绍Vue.js的学习总结——组件封装,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Vue.js中关于组件封装的学习总结

首先需要先了解什么是Vue组件:

  1. 组件(Component)是 Vue.js 最强大的功能之一。
  2. 组件可以扩展 HTML 元素,封装可重用的代码。
  3. 组件系统让我们可以用独立可复用的小组件来构建大型应用,几乎任意类型的应用的界面都可以抽象为一个组件树:
    组件树
    举例来说:假如我们现在需要使用ElementUI中的Dialog对话框和Checkbox 多选框来写一个具有多选功能的弹出框。而在整体项目中不止一处需要用到这个“多选弹出框”。为了代码的简洁性和可复用性,这时候我们就可以将此“多选弹出框”单独封装成一个组件来使用。

组件封装步骤
组件封装为三个步骤:

  1. 创建组件:
 <template>
  <el-dialog title="选择子设备"
             :visible.sync="visibleDialog"
             @close="close"
             width="500px">
    <el-radio-group v-model="device_id" @change="changeID(device_id)">
      <el-radio v-for="item in Device_List" :label="item.device_id" :key="device_id">{{item.name}}</el-radio>
    </el-radio-group>
    <span slot="footer" class="dialog-footer">
    <el-button  @click="close" >取 消</el-button>
    <el-button type="primary" @click="selectOk">确 定</el-button>
  </span>
  </el-dialog>
</template>
  1. 父组件中引入组件并注册:
 import {
        getVirtualDeviceList,
        getVirtualTempList,
        addVirtualDevice,
        getDeviceByType,
        editSubDevice,
        editVirtualDevice,
        testReadFun,
    } from '@/assets/js/api'
    // import EncapsulatingComponents from '../../../components/pages/Encapsulating_components'
    // import Test from '../../../components/common/test.vue'

    export default {
        // components: {
        //   EncapsulatingComponents
        //   // Test
        // },
  1. 利用props向子组件传递数据:
    父组件中引用:
 <encapsulating-components ref="selectDevice" :device_type="device_type"
                                  @changeID="changeID"></encapsulating-components>

子组件中在props中定义:

  props: {
      device_type: ''
    },
  1. 子组件向父组件传递数据,可以使用$emit()方法进行:

子组件传递数据:

 selectOk(){
        this.$emit('changeID',this.device_id)
        this.visibleDialog = false
      },

父组件接收数据:

  changeID(value) {
                  this.device_id = parseInt(value)
                  console.log('子设备设备ID:' + this.device_id)
              },

使用组件封装在日常开发中是非常方便的,基本使用就是以上步骤。

最后

以上就是搞怪曲奇为你收集整理的Vue.js的学习总结——组件封装的全部内容,希望文章能够帮你解决Vue.js的学习总结——组件封装所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(36)

评论列表共有 0 条评论

立即
投稿
返回
顶部