实际开发过程中我们经常听见组件化开发,但在实际开发过程中(没有人审查时)怎么方便来
我们有时是因为时间不够,所以把所有代码写在一个页面。当业务逻辑复杂时可能会有1k多行
虽然不能要求自己写出高效复用性高的组件,把dialog弹出框写成一个子组件抽走还是可以的
当你把表单抽在就会发现代码少了很多
1.在文件下创建components文件夹创建DialogForm.vue文件
- <template>
- <div>
- <el-dialog
- title="表单"
- :visible="dialogVisible"
- width="45%"
- @close="handleClose"
- >
- <span>子组件弹出框span>
- <span slot="footer" class="dialog-footer">
- <el-button @click="dialogVisible = false">关 闭el-button>
- <el-button type="primary" @click="dialogVisible = false"
- >发起合同审批
- >
- span>
- el-dialog>
- div>
- template>
-
- <script>
- export default {
- name: 'DialogForm',
- props: {
- DialogFlag: {
- default: false
- }
- },
- data () {
- return {
- // 开关
- dialogVisible: false,
- }
- },
- watch: {
- DialogFlag () {
- this.dialogVisible = this.DialogFlag
- }
- },
- created () {
- console.log('审批页面执行')
- },
- methods: {
- // 表单关闭事件-通知父组件关闭(.syanc)
- // 不通知父组件可能会报错,导致只能打开一次
- handleClose () {
- this.$emit('update:DialogFlag', false)
- },
- }
- }
- script>
2.在index.vue页面中使用
- // 引入组件
- import DialogForm from './components/DialogForm.vue'
-
- //注册组件
- components: {
- DialogForm
- },
-
- //data
- DialogFlag: false
-
- // html
- <DialogForm :DialogFlag.sync="DialogFlag" />
-
- // 使用组件
-
- type="primary"
- icon="el-icon-circle-plus-outline"
- @click="examinadd"
- >打开表单
- >
-
- examinadd () {
- this.DialogFlag = true
- },
总结:
经过这一趟流程下来相信你也对 vue el-dialog封装成子组件(组件化)有了初步的深刻印象,但在实际开发中我 们遇到的情况肯定是不一样的,所以我们要理解它的原理,万变不离其宗。加油,打工人!
什么不足的地方请大家指出谢谢 -- 風过无痕
-
相关阅读:
(附源码)ssm人才市场招聘信息系统 毕业设计 271621
XTU-OJ 1255-勾股数
【FPGA教程案例57】深度学习案例4——基于FPGA的CNN卷积神经网络之卷积层verilog实现
普中51单片机 A6
FastApi+Vue实现WebSockets服务端推送
数据可视化ECharts:定制柱形图
软件研发的十大浪费:研发效能的另一面
【无标题】
工业CT之三维重建技术
RabbitMQ开启MQTT协议支持
-
原文地址:https://blog.csdn.net/weixin_53579656/article/details/133914436