el-dialog element-ui弹窗

bulkImport.vue 自定义组件

<template>

<el-dialog :visible="modalVisible" title="批量导入" centered @close="$emit('close')" :fullscreen="true">

<span>弹窗内容</span>

<span slot="footer" class="dialog-footer">

<el-button @click="closeModal">取 消</el-button>

<el-button type="primary" @click="onConfirm">确 定</el-button>

</span>

</el-dialog>

</template>

<script>

export default {

props: {

// modal是否可见

modalVisible: {

type: Boolean,

default: false,

},

},

data() {

return {};

},

methods: {

onConfirm() {

this.$emit('bulkImport', {'aa':111,'bb':222});

},

closeModal() {

this.$emit('close');

},

},

watch: {},

computed: {},

components: {},

mounted() {},

};

</script>

<style lang="less" scoped>

</style>

================================================================

调用页面:

<template>

<div>

<el-button type="primary" @click="addTags()">批量导入</el-button>

<!-- 批量导入 -->

<bulkImport

@bulkImport="onBulkImport"

@close="() => (bulkImportVisible = false)"

:modalVisible="bulkImportVisible"

/>

</div>

</template>

<script>

//import bulkImport from '@/components/bulkImport.vue';

import bulkImport from '../../components/bulkImport.vue';

export default {

props: {

// modal是否可见

modalVisible: {

type: Boolean,

default: false,

},

},

components: {

bulkImport,

},

data() {

return {

bulkImportVisible: false,

};

},

methods: {

addTags() {

// 打开弹窗

this.bulkImportVisible = true;

},

onBulkImport(e) {

uni.showToast({

title:JSON.stringify(e),

icon: 'none',

duration: 5000

})

console.log(e); // 11

// 关闭弹窗

this.bulkImportVisible = false;

},

},

watch: {},

computed: {},

mounted() {},

};

</script>

<style>

</style>

相关推荐
黄同学real2 小时前
Vue 项目中运行 `npm run dev` 时发生的过程
前端·vue.js·npm
Kairo_013 小时前
在 API 模拟阶段:Apipost vs. Faker.js vs. Postman —— 为什么 Apipost 是最优选择
开发语言·javascript·postman
黄同学real3 小时前
vue 优化策略,大白话版本
前端·javascript·vue.js
唯鹿3 小时前
AI生成Flutter UI代码实践(一)
人工智能·flutter·ui
2501_915373884 小时前
electron+vite+vue3 快速入门教程
前端·javascript·electron
徐_三岁5 小时前
Vue3 + TypeScript 实现 PC 端鼠标横向拖动滚动
vue.js·typescript
code_shenbing6 小时前
WPF实现类似Microsoft Visual Studio2022界面效果及动态生成界面技术
ui·c#·wpf·上位机
麦麦大数据6 小时前
vue+django农产品价格预测和推荐可视化系统[带知识图谱]
vue.js·python·django·知识图谱·推荐算法·价格预测·农业大数据
知识分享小能手6 小时前
JavaScript学习教程,从入门到精通,Ajax数据交换格式与跨域处理(26)
xml·开发语言·前端·javascript·学习·ajax·css3
好名字08216 小时前
el-tabs与table样式冲突导致高度失效问题解决(vue2+elementui)
前端·vue.js·elementui