<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Document</title>
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
</head>
<body>
<div id='app'>
<el-button @click='handleOpenDialog'>打开Dialog弹框</el-button>
<el-dialog title='外部表格弹窗' center :visible.sync='outVisible' :before-close='outClose'>
<el-table :data='gridData'>
<el-table-column prop='date' label='日期'></el-table-column>
<el-table-column prop='name' label='姓名'></el-table-column>
<el-table-column prop='address' label='地址'></el-table-column>
<el-table-column label='操作'>
<template slot-scope='scope'>
<el-button type='warning' size='mini' @click='handleEdit(scope.row)'>修改</el-button>
</template>
</el-table-column>
</el-table>
<el-dialog title='内部表单弹窗' center :visible.sync='innerVisible' :before-close='outClose' append-to-body>
<el-form :model='formData' label-width='80px'>
<el-form-item label='日期'>
<el-input v-model='formData.date'></el-input>
</el-form-item>
<el-form-item label='姓名'>
<el-input v-model='formData.name'></el-input>
</el-form-item>
<el-form-item label='地址'>
<el-input v-model='formData.address'></el-input>
</el-form-item>
</el-form>
<span slot='footer'>
<el-button @click='innerVisible=false'>返回</el-button>
</span>
</el-dialog>
<span slot='footer'>
<el-button @click='outVisible=false'>返回</el-button>
</span>
</el-dialog>
</div>
</body>
</html>
<script>
new Vue({
el: '#app',
data() {
return {
outVisible: false,
innerVisible: false,
formData: { date: '', name: '', address: '' },
gridData: [{
date: '2016-05-02',
name: '王小虎',
address: '上海市普陀区金沙江路 1518 弄'
}, {
date: '2016-05-04',
name: '王小虎',
address: '上海市普陀区金沙江路 1518 弄'
}, {
date: '2016-05-01',
name: '王小虎',
address: '上海市普陀区金沙江路 1518 弄'
}, {
date: '2016-05-03',
name: '王小虎',
address: '上海市普陀区金沙江路 1518 弄'
}],
}
},
methods: {
handleOpenDialog() {
this.outVisible = true
},
outClose(done) {
this.$confirm('确认关闭', '提示框').then(() => {
done()
}).catch(() => {
})
},
handleEdit(row) {
this.formData = row
this.innerVisible = true
}
}
})
</script>
分享到:
相关推荐
总结:Vue组件间传值和事件触发是构建可复用、可维护应用的基础。通过`props`、`v-model`、`$emit`、`Vuex`等手段,我们可以有效地管理组件间的数据流动,同时通过自定义事件和事件回调实现组件间的交互。理解并熟练...
vue3父子组件传值,vue3组件传值,父子兄弟组件传值,props、emit、eventbus
先说问题,父组件利用props向子组件传值,浏览器 console 有这个值,但是获取不到内部的属性,困了我3个小时,真的** personal console 以下为原代码 1、home.vue(父组件)–personal是被传的参数 <!--子组件...
基于Vue Dialog实现可以移动窗口
### Vue不同组件间传值详解 在前端开发中,组件之间的通信是非常常见且重要的环节,尤其是在使用Vue.js这种基于组件化的框架时。本篇文章将详细阐述Vue中不同组件之间如何进行传值,包括常见的几种传值方式以及注意...
在Vue.js框架中,组件是构建用户界面的基本单元,它们可以独立地管理和更新各自的视图。组件间的通信是实现复杂应用交互的关键。本教程通过几个小案例,详细讲解了Vue中父组件向子组件传递数据、子组件向父组件回传...
在这个“vue父子组件传值案例”中,我们将深入探讨Vue 2.x版本中的父子组件通信机制,包括父组件如何向子组件传递数据以及子组件如何向父组件发送消息。 一、父组件向子组件传值 在Vue中,父组件向子组件传递数据...
总结以上所述,解决Vue中父子传值数据丢失问题的关键在于对数据的正确传递和合理管理。开发者需要掌握props的正确使用方法,理解watch的使用场景,以及掌握Vue中数据响应式的原理。通过上述方法和最佳实践,可以有效...
在父组件A 里 引入了子组件B , 但同时B组件又是子组件C的父组件,C又是子组件D的父组件 那么, A组件分别向B ,C ,D传值是如何实现的? D组件又是如何分别向C B A 传值的
### Vue3 组件传值与依赖注入详解 在前端开发中,组件间的通信是至关重要的。Vue3 提供了多种方式来实现组件间的数据传递,包括但不限于 Props、Events、Vuex 以及依赖注入等机制。本文将围绕这些知识点展开详细...
【JavaScript源代码】详解从vue的组件传值着手观察者模式 在JavaScript中,Vue框架是一种广泛应用的前端开发工具,其核心设计思想包含了观察者模式的元素。观察者模式是一种软件设计模式,它定义了对象间的一种一对...
采用广播方式对非父子界进行传值,需要依赖的vueEvent.js
本文将介绍三种常见的父子模板传值及组件传值的方法,适用于Vue 1.0版本。对于Vue 2.0及更高版本,官方文档提供了更详尽的指南,推荐查阅官方文档以获取最新和最准确的信息。 ### 第一种:Prop绑定 这种方法是最...
本文将深入探讨Vue父子组件传值时可能遇到的问题,以及如何解决这些问题,同时还会涉及到JavaScript中的深拷贝和浅拷贝概念。 1. 问题描述: 在Vue中,当你从父组件向子组件传递一个对象时,如果子组件直接修改了这...
vue组件在prop里根据type决定传值还是传引用。 简要如下: 传值:String、Number、Boolean 传引用:Array、Object 若想将数组或对象类型也以值形式传递怎么办呢?如下方式可以实现: // component-A 引用component-...
vue组件传值
本文将详细探讨Vue3中如何使用`setup`语法糖格式来实现父子组件的数据传递,包括`defineProps`和`defineEmits`这两个关键函数的用法。 ### 1. `defineProps`: 接收父组件传递的数据 在Vue3中,父组件向子组件传递...
在使用Vue.js框架进行前端开发时,组件间的通信是核心功能之一。其中,props是父子组件之间传递数据的主要方式。但是,开发者在使用props进行数据传递时,可能会遇到值传递失败导致在子组件中输出undefined的情况。...
本文将深入探讨如何解决Vue父子模板间的传值问题,结合案例详细讲解其实现方法和步骤。 首先,我们需要了解Vue中父子组件通信的基本原理。在Vue中,父组件可以通过props向下传递数据给子组件,而子组件则通过事件...