编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

vue-admin-template员工excel导入组件

wxchong 2024-06-22 20:44:24 开源技术 12 ℃ 0 评论

1.导入组件import-excel.vue

在employee/components/下建立import-excel.vue

<template>
<el-dialog
        width="500px"
        title="员工导入"
        :visible="showlog"
@close="$emit('update:showlog', false)"
        >
<el-row type="flex" justify="center">
<div class="upload-excel">
<input
          ref="excel-upload-input"
class="excel-upload-input"
        type="file"
        accept=".xlsx, .xls"
        >
<div class="drop">
<i class="el-icon-upload" />
<el-button type="text">下载导入模板</el-button>
<span>将文件拖到此处或
<el-button type="text">点击上传</el-button>
</span>
</div>
</div>
</el-row>
<el-row type="flex" justify="end">
<!-- update:props属性名,值 直接修改 .sync修饰符的属性值 -->
<el-button size="mini" type="primary" @click="$emit('update:showlog', false)">取消</el-button>
</el-row>
</el-dialog>
</template>
<script>

export default {
        props: {
        showlog: {
        type: Boolean,
default: false
        }
        },
        methods: {

        }
        }
</script>

<style scoped lang="scss">
        .upload-excel {
        display: flex;
        justify-content: center;
        margin: 20px;
        width: 360px;
        height: 180px;
        align-items: center;
        color: #697086;
        .excel-upload-input {
        display: none;
        z-index: -9999;
        }
        .btn-upload,
        .drop {
        border: 1px dashed #dcdfe6;
        width: 100%;
        height: 100%;
        text-align: center;
        line-height: 160px;
        border-radius: 8px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        }
        .drop {
        line-height: 40px;
        color: #bbb;
        i {
        font-size: 60px;
        display: block;
        color: #c0c4cc;
        }
        }
        }
</style>


2.在父组件index.vue调用封装组件

1)引入封装组件

import ImportExcel from './components/import-excel.vue'

2)页面引用组件

<import-excel :showlog.sync="showlog" @uploadSuccess="getEmployeeList" />

3)弹出组件

<el-button size="mini" @click="showlog = true">excel导入</el-button>

4)data中定义变量showlog

其中showlog作为了子组件的prop属性

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表