文章
问答
冒泡
  • 这是不是你们喜欢的钉钉审批流设计器
    前言 在审批流项目中,大多是用了bpmnjs 来作为前端流程配置工具的。这种交互模式可以高度贴合BPMN的流程,但是对于用户就不太友好,特别是非技术岗的用户。后来钉钉推出之后,钉钉的审批流程交互,就让人觉得很合适,用起来也很简单。有鉴于此,我们也着手实现一个类似的效果。 实现方案 交互实现 从效果图可以看到,整个的流程是一个自上而下的单向流程。这里并不是用类似x6的流程图方案实现的,而是将流程分为多个块,每个模块一个div 按照顺序排列。 数据结构 这里最重要的,就是规划好整个流程的数据结构。从效果反推,这里的结构,应该是一个类似链表结构的方式,一个节点会包含上个节点的信息和下个节点的信息。如...
  • 聊一聊各种场景下技术栈的选择
    前言 经常有朋友找我沟通,我要搞一个什么东西,用什么技术方案比较好呢?每次都需要了解相关情况,回答的多了,干脆就梳理一下。也可以分享给别人一起交流。 首先,我们要明白,没有最好的方案,只有合适的方案,具体要怎么做,还是要结合自身团队的情况和项目的实际情况。 场景 我们先梳理下相关的场景,主要分为以下几大类 web服务端 前端 桌面应用 小程序 嵌入式 上位机 物联网 大数据 web服务端 开发语言 框架 数据库 消息队列 文件存储 java spring boot mvc mysql, postgresql, sqlserver, oracle rabbitmq minio .net core...
  • 从零开发一个表单设计器
    前言 为什么要自己实现一个表单设计器 网上找了很久没有发现比较好的,比较好用的基本都不开源,formilyjs配套的designable功能比较强大,用起来也不错。但是很可惜,已经不维护了。另外,designable设计的很复杂,改造成本很高,对于大多数项目而言很多是用不到的。并且designable和antd深度绑定了。其他前端组件库很难与其集成。所以,我们决定,自己实现一套,一次性解决问题。 designable 地址 https://github.com/alibaba/designable 由于designable 停止维护了,我们提供了designable的基于antd v5的修复版...
  • 我可能是全中国最了解 tailwindcss 的开发者
    我可能是全中国最了解 tailwindcss 的开发者 我可能是全中国最了解 tailwindcss 的开发者 前言 预设 小工具 转化器 UI 组件库 开源起始 上下求索 开发之始 更多的平台 继续突破 兴趣还是生计? 收获和结语 附录 前言 首先,我要对起这样的标题感到抱歉,本来想起一个 "我的2年开源之旅" 这样的标题,但是我知道,这种标题太普通,肯定就没啥人感兴趣看,就像我写的大部分文章一样。 于是索性做了一回标题党(坏笑~)。不过这个标题也不是空穴来风,我也确实比较了解 tailwindcss,围绕着它的生态,我陆陆续续开发了: 预设 tailwindcss-miniprogram-...
  • CLion集成包管理工具-conan
    前言 Conan是一款免费开源且去中心化的C/C++包管理工具,适用于所有平台(Windows,Linux,OSX,FreeBSD,Solaris等)。对于熟悉python的朋友来说,conan类似于anaconda。 Conan官网 https://conan.io/ 本文环境 64位 Windows11 CLion 2023.3.1 Visual Studio 16 2019 安装Conan https://conan.io/downloads 可以通过pip install conan,我是通过安装器安装的 安装完后配置环境变量,查看版本号检测是否安装成功 >conan --versio...
  • CLion集成包管理工具-vcpkg
    前言 vcpkg是由微软开源的C/C++跨平台包管理工具,支持Windows、Linux和MacOS。 vcpkg github: https://github.com/microsoft/vcpkg 本文环境 64位 Windows11 CLion 2023.3.1 Visual Studio 16 2019 安装vcpkg 我是跟着github上安装的,就是拉完项目后跑个脚本就行,最多自己配个环境变量 > git clone https://github.com/microsoft/vcpkg > .\vcpkg\bootstrap-vcpkg.bat 安装完后先查看版本号检测是否安装成功...
  • Python使用openpyxl模块生成excel实战
    最近需要基于python语言生成一个excel文件,调研了一下,选择使用openpyxl模块来做,控制上会更好一些,下面是具体的代码,给大家做个使用上的参考: from openpyxl.styles import Alignment, Font from openpyxl.workbook import Workbook if __name__ == '__main__': # 创建一个工作簿 wb = Workbook() # 创建一个新的sheet wb.create_sheet("一个新的sheet", 1) # 获取当前活跃的工作表 ...
  • Python中使用logging模块打印异常调用栈实战
    最近使用logging模块打印日志的时候对于如何打印异常调用栈的使用方式感到迷惑,总结了下面几种方法,也都是一些基本使用的方式,算抛砖引玉了。不说了,直接上代码。 import traceback import logging logging.basicConfig() logger = logging.getLogger(__name__) logger.setLevel(logging.INFO) consoleHandler = logging.StreamHandler() consoleHandler.setLevel(logging.INFO) consoleHandler.s...
  • 【记录】SVG图标相互影响污染问题
    问题描述:在某次提交之前,Icon的展示是这样的,上传svg图标,通过css的color修改图标颜色 但是某次提交之后,变为了这个效果,图标的底色被改变了。 排查:通过git checkout 《commit hash》,定位到出现问题的hash,然后通过 diff 定位到问题是新增这段svg代码的问题。 原因:使用AI直接导出的两个svg代码里,使用了相同的类名选择器,导致样式污染。 svg在寻找重用元素时的机制为:在当前HTML环境中寻找第一个匹配的元素。并不是我们想象中的在svg自己内部寻找或者逐层往外寻找。所以,在html中直接引入svg必然会存在互相影响的问题,也必然会带来一些未知的...
  • 编写一个简单的Tampermonkey脚本
    前言 用了很久tampermonkey脚本,但一直没有自己写过,今天来尝试编写一个简单的脚本。 安装 去谷歌商店安装tampermonkey插件 https://chrome.google.com/webstore/detail/dhdgffkkebhmkfjojejmpbldmpobfkfo Tampermonkey首页 https://www.tampermonkey.net/index.php 用vscode开发 首先在插件处添加新脚本 如果不用vscode可以直接在页面编辑器上写,但是没有代码提示,代码格式调整等,编写很麻烦,所以我们通过官方提供的@require 引入本地的js文件,...
  • © 2015-2024 苏州墨焱网络科技有限公司
  • 苏ICP备14018695号-2
  • 公安 苏公网安备 32059002002453号