当前位置: 首页 > news >正文

Vue3、element-plus和Vue2、elementUI的一些转换

  • 插槽
Vue3<template #default="scope"></template>
<template #footer></template>Vue2<template slot-scope="scope"></template>
<template slot="footer"></template>
  • JS定义
Vue3
<script setup>
defineOptions({name: 'User',
})
</script>Vue2
<script>
export default {name: 'User',
}
</script>
  • 变量定义和赋值
Vue3
const path = ref(import.meta.env.VITE_BASE_API + '/')const page = ref(1)
const total = ref(0)Vue2
const path = process.env.VUE_APP_BASE_API + '/';data() {return {page: 1,total: 0,};
},
  • 方法定义
Vue3const setAuthorityOptions = (AuthorityData, optionsData) => {});Vue2methods: {setAuthorityOptions(AuthorityData, optionsData) {},},
Vue3// 分页const handleSizeChange = (val) => {pageSize.value = valgetTableData()}Vue2methods: {// 分页handleSizeChange(val) {this.pageSize = val;this.getTableData();},},
  • mounted
Vue3
initPage()Vue2mounted() {this.initPage();},
  • watch
Vue3
watch(() => tableData.value, () => {setAuthorityIds()
})Vue2
watch: {tableData(val, oldVal) {this.setAuthorityIds();},
},
  • elementUI的message
Vue3
import { ElMessage } from 'element-plus'
ElMessage({ type: 'success', message: '角色设置成功' })Vue2
this.$message({ type: 'success', message: '角色设置成功' });
  • nextTick
Vue3
nextTick();Vue2
this.$nextTick();
  • 组件引用

Vue3

import ChooseImg from '@/components/chooseImg/index.vue'
<ChooseImg ref="chooseImg"  />

Vue2

<ChooseImg ref="chooseImg"  />import ChooseImg from '@/components/chooseImg/index.vue'components: {ChooseImg,},
  • button按钮图标

Vue3

<el-button type="primary" icon="plus" @click="addUser">新增用户</el-button>

Vue2

<el-button type="primary" icon="el-icon-plus" @click="addUser">新增用户</el-button>
  • 确认和取消按钮

Vue3

<el-buttontype="primary"link@click="scope.row.visible = false">取消</el-button><el-buttontype="primary"@click="deleteUserFunc(scope.row)">确定
</el-button>


Vue2

<el-buttontype="text"@click="scope.row.visible = false">取消</el-button><el-buttontype="primary"@click="deleteUserFunc(scope.row)">确定
</el-button>
  • dialog

Vue3

<el-dialog v-model="addUserDialog"</el-dialog>

Vue2

<el-dialog visible.sync="addUserDialog"</el-dialog>

Vue3

<template #reference></template>

Vue2

<template slot="reference"></template>
  • 重置表单

Vue3
 

userForm.value.resetFields()

Vue2
 

this.$refs.userForm.resetFields()
  • 表单校验

Vue3

<el-formref="userForm":rules="rules":model="userInfo"label-width="80px"></el-form>
const userForm = ref(null)
const enterAddUserDialog = async() => {userForm.value.validate(async valid => {if (valid) {}})
}

Vue2

        <el-formref="userForm":rules="rules":model="userInfo"label-width="80px"></el-form>data() {return {userForm: null,
}}async enterAddUserDialog() {this.$refs.userForm.validate(async valid => {if (valid) {}});},
  • 父子组件方法调用

Vue3

const emits = defineEmits(['foldChange'])
emits('foldChange', isFold.value)


Vue2

在Vue2中,你可以使用$emit方法来触发一个自定义事件,并传递参数。假设isFold是Vue实例中的一个data属性,你可以直接通过this.isFold来获取它的值,并将其作为参数传递给$emit方法。

this.$emit('foldChange', this.isFold);
  • 父子组件传值

Vue3

defineProps({target: {type: Object,default: null,},targetKey: {type: String,default: '',},
})

Vue2

  props: {target: {type: Object,default: null,},targetKey: {type: String,default: '',},},

Vue3

const a = 1
const b = ref(2)defineExpose({
a,
b
})

Vue2

export default {data() {return {a: 1,b: 2}},mounted() {this.$parent.a = this.athis.$parent.b = this.b}
}

相关文章:

Vue3、element-plus和Vue2、elementUI的一些转换

插槽 Vue3<template #default"scope"></template> <template #footer></template>Vue2<template slot-scope"scope"></template> <template slot"footer"></template>JS定义 Vue3 <script…...

Go语言gin框架中加载html/css/js等静态资源

Gin框架没有内置静态文件服务&#xff0c;但可以使用gin.Static或gin.StaticFS中间件来提供静态文件服务。 效果图如下&#xff1a; 一、gin 框架加载 Html 模板文件的方法 方式1&#xff1a;加载单个或多个html文件&#xff0c;需要指明具体文件名 r.LoadHTMLFiles("vie…...

#鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行

3 月 19 日&#xff0c;#鸿蒙生态创新中心#揭幕仪式在深圳湾科技生态园举行。 现场&#xff0c;深圳市南山区人民政府副区长李志娜发布《2024 年南山区支持鸿蒙原生应用发展首批政策措施清单》&#xff0c;从加强鸿蒙原生应用供给能力、推动鸿蒙原生应用产业集聚、完善鸿蒙原生…...

flask 继续学习

group_by group_by是一种在数据库查询或数据处理中常用的操作&#xff0c;它用于将数据按照指定的列进行分组。通过group_by操作&#xff0c;可以将数据集按照某个列的值进行分类&#xff0c;然后对每个分类进行聚合计算或其他操作。 在SQL语言中&#xff0c;group_by通常与聚…...

DockerFile遇到的坑

CMD 命令的坑 dockerfile 中的 CMD 命令在docker run -it 不会执行 CMD 命令。 FROM golang WORKDIR / COPY . ./All-in-one CMD ["/bin/sh","-c","touch /kkk.txt && ls -la"] RUN echo alias ll"ls -la" > ~/.bashrc(不…...

并网型风光储微电网日前优化调度(MATLAB实现)

考虑了光伏发电、风力发电、电池储能和负荷需求等因素&#xff0c;与主网相连不考虑向主网售电情况。 % 微电网日前优化调度示例代码% 定义时间步长&#xff08;例如&#xff0c;每小时&#xff09; time_steps 24;% 生成模拟数据&#xff1a;光伏发电量&#xff0c;风力发电…...

MATLAB环境下基于振动信号的轴承状态监测和故障诊断

故障预测与健康管理PHM分为故障预测和健康管理与维修两部分&#xff0c;PHM首先借助传感器采集关键零部件的运行状态数据&#xff0c;如振动信号、温度图像、电流电压信号、声音信号及油液分析等&#xff0c;提取设备的运行监测指标&#xff0c;进而实现对设备关键零部件运行状…...

流畅的 Python 第二版(GPT 重译)(十二)

第五部分&#xff1a;元编程 第二十二章&#xff1a;动态属性和属性 属性的关键重要性在于&#xff0c;它们的存在使得将公共数据属性作为类的公共接口的一部分完全安全且确实可取。 Martelli、Ravenscroft 和 Holden&#xff0c;“为什么属性很重要” 在 Python 中&#xff0…...

【Python 48小时速成 2】关键字

文章目录 01. and &#xff1a;逻辑运算符&#xff0c;表示逻辑与操作。02. exec &#xff1a;内置函数&#xff0c;用于执行存储在字符串或文件中的 Python 代码。03. not &#xff1a;逻辑运算符&#xff0c;表示逻辑非操作。04. assert &#xff1a;断言语句&#xff0c;用于…...

小程序socket 全局代码

在微信小程序中&#xff0c;为了实现在整个应用范围内共享一个WebSocket连接&#xff0c;通常会将WebSocket的创建、打开、关闭以及消息收发等功能封装在一个全局模块中&#xff0c;然后在各个需要使用WebSocket功能的页面中引入并调用这个模块的方法。以下是一个简化的全局Web…...

数据挖掘|数据集成|基于Python的数据集成关键问题处理

数据挖掘|数据集成|基于Python的数据集成关键问题处理 1. 实体识别2. 数据冗余与相关性分析3. 去除重复记录4. 数据值冲突的检测与处理5. 基于Python的数据集成5.1 merge()方法5.2 Concat()方法 数据集成是把来自多个数据库或文件等不同数据源的数据整合成一致的数据存储。其中…...

Linux-网络层IP协议、链路层以太网协议解析

目录 网络层&#xff1a;IP协议地址管理路由选择 链路层 网络层&#xff1a; 网络层&#xff1a;负责地址管理与路由选择 — IP协议&#xff0c;地址管理&#xff0c;路由选择 IP协议 数据格式&#xff1a; 4位协议版本&#xff1a;4-ipv4协议版本 4位首部长度&#xff1a;以…...

后端开发辅助

maven仓库手动添加jar命令 mvn install:install-file -DfileD:\\spire.xls-4.6.5.jar -DgroupIde-iceblue -DartifactIdspire.xls -Dversion4.6.5 -Dpackagingjaroracle调用存储过程示例 DECLAREPO_ERRCODE VARCHAR2(100);PO_ERRMSG VARCHAR2(100);BEGIN-- Call the procedure…...

插件电阻的工艺结构原理及选型参数总结

🏡《总目录》 目录 1,概述2,工作原理3,结构特点3.1,引脚设计3.2,电阻体3.3,封装4,工艺流程4.1,材料准备4.2,电阻体制作4.3,引脚焊接4.4,绝缘处理4.5,测试与筛选4.6,包装与存储...

视频私有云,HDMI/AV多硬件设备终端接入,SFU/MCU视频会议交互方案。

在视频业务深入的过程中越来越多的硬件设备接入视频交互的视频会议中远程交互&#xff0c;有的是视频采集&#xff0c;有的是医疗影像等资料&#xff0c;都需要在终端承显&#xff0c;这就需要我们的设备终端能多设备&#xff0c;多协议接入&#xff0c;设备接入如下。 1&#…...

mac os 配置两个github账号

1. 清空git全局配置的username和email git config --global --unset user.name git config --global --unset user.emailgit config --list 可以查看是否清空了 2. 定义两个标识符,这两个标识符以后会被用来代替“github.com”来使用。 假设两个账号的邮箱地址分别是a@gmai…...

【SpringBoot】登录校验之会话技术、统一拦截技术

真正的登录功能应该是&#xff1a; 登陆后才能访问后端系统页面&#xff0c;不登陆则跳转登陆页面进行登陆。 当我们没有设置登录校验&#xff0c;可以直接通过修改地址栏直接进入管理系统内部&#xff0c;跳过登录页。而后端系统的增删改查功能&#xff0c;没有添加判断用户是…...

Cohere发布大模型Command-R:35B参数,128K上下文,高性能 RAG 功能,支持中文

引言 随着人工智能技术的快速发展&#xff0c;大型语言模型&#xff08;LLM&#xff09;在各行各业的应用日益广泛。Cohere最新发布的Command-R模型&#xff0c;以其35B参数和128K的长上下文能力&#xff0c;为企业级应用带来了前所未有的可能性。本文将深入探讨Command-R的核…...

vue+element 前端实现增删查改+分页,不调用后端

前端实现增删查改分页&#xff0c;不调用后端。 大概就是对数组内的数据进行增删查改分页 没调什么样式&#xff0c;不想写后端&#xff0c;当做练习 <template><div><!-- 查询 --><el-form :inline"true" :model"formQuery">&l…...

浅谈如何自我实现一个消息队列服务器(2)——实现 broker server 服务器

文章目录 一、实现 broker server 服务器1.1 创建一个SpringBoot项目1.2 创建Java类 二、硬盘持久化存储 broker server 里的数据2.1 数据库存储2.1.1 浅谈SQLiteMyBatis 2.1.2 如何使用SQLite 2.2 使用DataBaseManager类封装数据库操作2.3 文件存储消息2.3.1 存储消息时&#…...

北美面试生存指南:如何优雅应对“压力测试”与“强势发问”?

顺利通过了简历筛选和第一轮的基础技术面&#xff0c;你信心满满地进入了 Onsite&#xff08;现场/视频连线&#xff09;轮次。然而&#xff0c;你遇到的面试官却全程板着脸&#xff0c;不仅频繁打断你的发言&#xff0c;还对你简历上最引以为傲的项目提出尖锐质疑&#xff1a;…...

AI代码优化神器coze-loop体验:粘贴代码选目标,秒出优化方案

AI代码优化神器coze-loop体验&#xff1a;粘贴代码选目标&#xff0c;秒出优化方案 1. 为什么需要AI代码优化工具 在日常开发中&#xff0c;我们经常面临这样的困境&#xff1a;一段能运行的代码&#xff0c;可能隐藏着性能瓶颈、可读性差或潜在bug。传统优化方式依赖个人经验…...

用STM32F407的FSMC总线给FPGA当外挂RAM?一个实战项目带你打通软硬件

STM32与FPGA的FSMC总线实战&#xff1a;打造高性能异构内存扩展方案 在嵌入式系统开发中&#xff0c;内存资源常常成为性能瓶颈。当STM32需要处理大规模数据时&#xff0c;内部SRAM可能捉襟见肘。本文将展示如何利用STM32F407的FSMC总线&#xff0c;将FPGA内部RAM无缝扩展为MCU…...

3个实用技巧:掌握Chrome文本替换插件的终极指南

3个实用技巧&#xff1a;掌握Chrome文本替换插件的终极指南 【免费下载链接】chrome-extensions-searchReplace 项目地址: https://gitcode.com/gh_mirrors/ch/chrome-extensions-searchReplace 你是否曾在浏览网页时发现错别字却无法修改&#xff1f;是否需要对大量重…...

告别眼瞎!FullEventLogView实战:高效分析海量Windows安全日志(evtx文件)的保姆级技巧

告别眼瞎&#xff01;FullEventLogView实战&#xff1a;高效分析海量Windows安全日志&#xff08;evtx文件&#xff09;的保姆级技巧 在网络安全事件响应和系统运维中&#xff0c;Windows事件日志&#xff08;evtx文件&#xff09;分析是每个技术人员都绕不开的必修课。但当你面…...

MelonLoader完整教程:5分钟学会Unity游戏模组加载终极方案

MelonLoader完整教程&#xff1a;5分钟学会Unity游戏模组加载终极方案 【免费下载链接】MelonLoader The Worlds First Universal Mod Loader for Unity Games compatible with both Il2Cpp and Mono 项目地址: https://gitcode.com/gh_mirrors/me/MelonLoader MelonLoa…...

如何在6小时内将小说变成爆款推文视频?TaleStreamAI完整指南

如何在6小时内将小说变成爆款推文视频&#xff1f;TaleStreamAI完整指南 【免费下载链接】TaleStreamAI AI小说推文全自动工作流&#xff0c;自动从ID到视频 项目地址: https://gitcode.com/gh_mirrors/ta/TaleStreamAI 你是否曾想过&#xff0c;将一本精彩的小说在短短…...

嵌入式轻量级调试库:零开销DEBUG_PRINT实现原理

1. 项目概述 Utils 是一个面向嵌入式系统的轻量级调试输出工具库&#xff0c;核心目标是为资源受限的MCU平台&#xff08;如ESP32、STM32、nRF52等&#xff09;提供类 printf() 的格式化打印能力&#xff0c;同时严格控制运行时开销与代码体积。该库不依赖标准C库的 stdio.…...

新手入门编程选C语言!超详细零基础入门指南请查收

新手入门编程&#xff0c;选对语言太关键&#xff01;许多人有着想要学习编程的想法&#xff0c;然而却不清楚该从哪里开始着手——实际上C语言才是对于没有基础之人最为适宜的“敲门砖”。它身为编程领域的“老大哥”&#xff0c;不但语法秉持简洁的特点、易于让人掌握&#x…...

WiFiPixels:ESP32上轻量级Wi-Fi控制NeoPixel的固件框架

1. 项目概述WiFiPixels 是一个面向嵌入式 LED 控制场景的轻量级网络化固件框架&#xff0c;其核心设计目标是将 NeoPixel&#xff08;WS2812B 类型&#xff09;LED 阵列通过 Wi-Fi 接口暴露为可远程寻址、实时更新的像素资源。项目名称 “NeoPixel Wifi WifiPixels” 并非营销…...