酷客365
  • 首页
  • AI
  • 前端
  • 服务器
  • Java
  • PHP
  • 关于我
  • 首页
  • AI
  • 前端
  • 服务器
  • Java
  • PHP
  • 关于我
  1. 首页
  2. 前端
  3. 文章列表
从0到1解锁Element-Plus组件二次封装El-Dialog动态调用

前端 从0到1解锁Element-Plus组件二次封装El-Dialog动态调用

技术难题初登场 家人们,最近在开发一个超复杂的后台管理系统项目,里面有各种数据展示、表单提交、权限控制等功能,在这个过程中,我频繁地使用到了element-plus组件库中的el-dialog组件 。它就像一个小弹窗,可以用来显示各种提示信息、编辑表单之类的。比如说在用户点击 “编辑” 按钮时,就弹出一个el-dialog,里面放着编辑表单,让用户修改数据。 但随着功能的不断完善,我发现原生的el-dialog组件在某些场景下真的不够灵活。比如说,我想在不同的组件中根据不同的业务逻辑动态地控制对话框的显示和隐藏,还要传递不同的数据给对话框,原生组件用起来就很麻烦,每次都要写很多重复的代码,这可太影响开发效率了。所以,我就决定对el-dialog进行二次封装,实现动态调用,让它更好地满足我的项目需求。接下来,就把我的经验分享给大家,一起看看怎么解决这个问题。 实现效果 代码实现 import { ElButton, ElDialog } from "element-plus"; import { createApp, h } from "vue";…

9次阅读 0个评论
前端 2025-07-03
微信小程序多组件之间 css 用 deep 不生效的一些处理办法

前端 微信小程序多组件之间 css 用 deep 不生效的一些处理办法

直接上代码了,vue3 setup 模式下 需要额外写一个script <script> export default { options: { styleIsolation: 'shared' } } </script> styleIsolation 可选项 isolated 表示启用样式隔离,在自定义组件内外,使用 class 指定的样式将不会相互影响(一般情况下的默认值) apply-shared 表示页面 wxss 样式将影响到自定义组件,但自定义组件 wxss 中指定的样式不会影响页面 shared 表示页面 wxss 样式将影响到自定义组件,自定义组件 wxss 中指定的样式也会影响页面和其他设置了 apply-shared 或 shared 的自定义组件。(这个选项在插件中不可用。)

57次阅读 0个评论
前端 2024-12-29
Web Worker使用 import 填坑的一些记录

前端 Web Worker使用 import 填坑的一些记录

Web Worker中需要加载js文件中包含import 的文件的话,需要一些设置 // main.js(主线程) const worker = new Worker('/worker.js', { type: 'module' // 指定 worker.js 的类型 这里设置开启 ESModule 模式 });

47次阅读 0个评论
前端 2024-10-29
react 用 react-i18next 做国际化处理的一些使用记录

前端 react 用 react-i18next 做国际化处理的一些使用记录

<Trans i18nKey={'app.btn.setIcon'} defaults={'设置图标'} /> i18nKey 是 对应翻译文件的key,defaults 是默认值,就是找不到翻译文件的时候显示的默认内容 // t 的用法 {t('common.button.cancel', { defaultValue: '取消 {{name}}', name: iconPath })} 第一个参数 common.button.cancel 为翻译文件的key,defaultValue 是找不到翻译时候显示的默认内容, name 的对应 defaultValue 里面的 {{name}} 动态值,他会知道替换里面的内容

27次阅读 0个评论
前端 2024-10-26
使用vue3+provide+inject+watch组件层级太深之后偶发watch监测不到的情况

前端 使用vue3+provide+inject+watch组件层级太深之后偶发watch监测不到的情况

最近开发页面装修功能,封装了很多层级的子组件,顶层用provide设置当前编辑的右侧数据,如下图 在最里面的子组件使用了watch来监听数据的变化 // 监听数据变化 watch( () => props.modelValue, (newVal) => { if (!newVal) return; rightStyle.value = newVal; }, { deep: true } ); watch( () => rightStyle.value, () => { // 数据更新后,通知父组件更新数据 emit('update:modelValue', rightStyle.value); }, { deep: true } ); 然后奇怪的事情发生了,如下图 watch 竟然监听不到变化,经过反复摸索,代码变更为 // 监听数据变化 watch( () => props.modelValue, (newVal) => { if (!newVal) return; rightStyle.value = newVal; }, {…

30次阅读 0个评论
前端 2024-09-14
小程序海报生成神器之一Painter配合uniapp使用示例

前端 小程序海报生成神器之一Painter配合uniapp使用示例

本篇详细介绍Painter在uniapp中的使用方法 前置资源: Painter的github库:https://github.com/Kujiale-Mobile/Painter Painter在线设置网站:https://lingxiaoyi.github.io/painter-custom-poster/ 完整demo:https://gitee.com/hackchen/uniapp-painter-demo 新建项目 使用HBuilderX新建一个空项目 新建一个叫painter-demo的页面 新建一个js文件paletteData.js(这个文件可自行决定是否需要,本demo因为数据量太大,所以独立建一个文件) 通过github,下载得到painter项目文件 将项目下的components/painter文件夹复制到uniapp项目的wxcomponents文件夹下 新建完文件后,大致的目录结构如下图 修改pages.json { "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/…

19次阅读 0个评论
前端 2024-06-20
鸿蒙开发填坑记录 web 组件01

前端 鸿蒙开发填坑记录 web 组件01

// xxx.ets import web_webview from '@ohos.web.webview' @Entry @Component struct WebComponent { controller: web_webview.WebviewController = new web_webview.WebviewController(); build() { Column() { // src 不能带协议 Web({ src: 'www.baidu.com', controller: this.controller }) } } } // 需要额外配置当前模块下的 module.json5 文件 requestPermissions 块 { "module": { "name": "entry", "type": "entry", "description": "$string:module_desc&quo…

27次阅读 0个评论
前端 2024-03-29
electron 安装失败,其中一种处理办法

前端 electron 安装失败,其中一种处理办法

运行下面命令 npm config ls -l 上面命令会显示 .npmrc 文件所在路径 打开 .npmrc 文件,并添加下面内容 ELECTRON_MIRROR="https://npmmirror.com/mirrors/electron/"

21次阅读 0个评论
前端 2024-02-28
vite 打包 执行 build 报 Unexpected token ‘??=’

前端 vite 打包 执行 build 报 Unexpected token ‘??=’

当前环境 vite 版本 4.2.1 node 版本 14.20.0 通过百度查到 Unexpected token '??=' 是由于node版本太低造成的,使用nvm 升级node 到 18 版本即可解决

20次阅读 0个评论
前端 2023-11-06
微信小程序web-view中拦截后退事件

前端 微信小程序web-view中拦截后退事件

if(fast.device.isWxMiniProgram()) { $("#js_wx_mini").attr('src',"/js/jweixin-1.3.2.js"); $(".icon-arrow-left").hide(); $(".fast-nav-title").css({ marginLeft:'0px' }); // 监听 popstate 事件 window.addEventListener('popstate',function(event) { wx.miniProgram.navigateBack(); }); }

12次阅读 0个评论
前端 2023-11-02
nodejs nvm list available 为空

前端 nodejs nvm list available 为空

找到nvm的安装目录,打开 settings.txt 文件,添加下面2行配置 node_mirror: https://npm.taobao.org/mirrors/node/ npm_mirror: https://npm.taobao.org/mirrors/npm/

6次阅读 0个评论
前端 2023-08-30
uniapp Android本地打包报 Your build is currently configured to use Java 17 and Gradle 6

前端 uniapp Android本地打包报 Your build is currently configured to use Java 17 and Gradle 6

这是因为jdk版本太高了,可以调低版本 可以尝试 JDK 1.8

13次阅读 0个评论
前端 2023-08-24
Android Studio 有时候不显示Gradle命令或者显示Task list not built

前端 Android Studio 有时候不显示Gradle命令或者显示Task list not built

显示如下提示 只要打开下面设置即可 打钩红色框框选项

3次阅读 0个评论
前端 2023-08-24
uniapp 在 APP平台,本地缓存图片

前端 uniapp 在 APP平台,本地缓存图片

const downPic = async (url: string, fileName: string) => { // 判断文件是否存在 const isExist = () => { return new Promise((resolve, reject) => { plus.io.resolveLocalFileSystemURL( `_downloads/${fileName}`, function (entry) { // 文件存在 console.log(`File exists: ${entry.name}`); resolve(entry); }, function (e) { // 文件不存在 console.log(`File not found: ${e.message}`); resolve(false); } ); }); }; const file = await isExist(); if (file) { return new Promise((resolve, reject) => { resolve({ filename: …

9次阅读 0个评论
前端 2023-08-21
eslint 使用 airbnb-base 规则导致Windows下换行符报错的问题

前端 eslint 使用 airbnb-base 规则导致Windows下换行符报错的问题

在 .eslintrc 文件中设置 rules { 'rules': { 'linebreak-style': 0 }} 解决办法二: # windows 在拉仓库之前修改 git 配置文件(换行符使用 LF 而不会自动转化为 CRLF) git config –global core.autocrlf false

8次阅读 0个评论
前端 2023-08-15
  • 1
  • 2
  • 3
  • ...
  • 5
  • »
Eric chan  QQ:80148096 微信:heise2012
Eric chan QQ:80148096 微信:heise2012
99年开始上网 01年开始搞《江湖》 04年学PHP 07年学C# 08年毕业后从事IT相关工作 工作期间接触各种语言服务器等,目前属于自由工作者。 目前后台主要使用的语言是PHP、GO、Java 前端包括混合APP技术(uniapp、apicloud)都有开发过。 使用PHP自行开发了一套基础商城框架。
阅读量
115156
评论数
0
标签
3desAndroidbinlogcanalcentosChatGPTcicomposercosDeepSeekdockerdocker swarmdocker-composeDockerfiledronedtueasyswooleel-dialogelectronElement-Plus
一言一句话
-「」
热门文章
VMware15 安装 mac OS 10.15 调整分辨率

VMware15 安装 mac OS 10.15 调整分辨率

在Mac虚拟机里的终端执行下面的命令,执行完之后重启即可 1920*1080分辨率: sudo...
Quartz MySQL Specified key was too long; max key length is 767 bytes

Quartz MySQL Specified key was too long; max key length is 767 bytes

昨天使用定时任务框架Quartz,建表时数据库报错,在此记录一下,通常情况下为了方便兼容emoji表...
阿里小号突然不能开机了阿里小号客服电话

阿里小号突然不能开机了阿里小号客服电话

阿里小号突然不能开机了,找不到他们的客服,搜索了半天 才找到的,在这里记录一下 10029...
VMware 安装 Mac os时必要操作

VMware 安装 Mac os时必要操作

解锁工具Unlocker ,对 VMware进行解锁 在 *.vmx...
WordPress出现Briefly unavailable for scheduled maintenance. Check back in a minute. 的解决方法

WordPress出现Briefly unavailable for scheduled maintenance. Check back in a minute. 的解决方法

今天刚好博客升级提示一个错误,在这里记录一下 解决方法:...
猜你喜欢
docker-compose.yml 一个细小的配置引起的网络bug

docker-compose.yml 一个细小的配置引起的网络bug

原 yml 文件 services: mysql: image: mysql:8.0.35...
制作一个包含PHP、MySQL、Redis、swoole、swoole_loader的docker镜像

制作一个包含PHP、MySQL、Redis、swoole、swoole_loader的docker镜像

前言 近期需要部署一个PHP项目,但是项目中带有...
白嫖DeepSeek的一个开源项目Awesome-Ollama-Server

白嫖DeepSeek的一个开源项目Awesome-Ollama-Server

介绍 Awesome-Ollama-Server 是一个用于监控和检测 Ollama...
react 用 react-i18next 做国际化处理的一些使用记录

react 用 react-i18next 做国际化处理的一些使用记录

<Trans i18nKey={'app.btn.setIcon'}...
使用vue3+provide+inject+watch组件层级太深之后偶发watch监测不到的情况

使用vue3+provide+inject+watch组件层级太深之后偶发watch监测不到的情况

最近开发页面装修功能,封装了很多层级的子组件,顶层用provide设置当前编辑的右侧数据,如下图...
关于我们

个人学习文章收集

版权说明

本站部分资源和文章来自于网络收集,若侵犯了你的隐私或版权,请及时联系我们删除有关信息。

Copyright @2025 酷客365 网站地图 琼ICP备15003184号-3
 Theme by Puock