自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 问答 (1)
  • 收藏
  • 关注

原创 阿里低代码框架 lowcode-engine 低代码表单实战

lowcode-engine功能比较强大,最近做了个低代码表单的实战,在过程中遇到一些问题,在这里做下介绍和总结。 功能演示 前台功能 主要介绍一下前台功能的基本实现和一些问题.

2024-03-18 10:28:20 1248

原创 【全栈必备】Nginx 代理文件目录,访问文件做权限校验

做后台项目的时候,通常会有文件上传,上传的文件我们放到服务器上的目录,这时候预览下载走我们希望不走自己的服务,用nginx去代理,为了安全,这时候我们就要去做权限的验证了

2024-02-26 10:21:43 1085

原创 学会TS中extends和infer,解决实际问题,快来看看吧

这个类型的用途是将一个对象的属性中,如果是 Observable 类型的,就转换为 Observable 的泛型参数类型,否则保持不变.是个Observable范型,我们实例化这个类后,经过一个useSelector方法之后,想要直获取到属性的对应类型。关键字可以方便地从一个类型中提取出一个新的类型,这样就可以在类型中使用这个新的类型了。」,里面已有多篇原创文章,和开发工具,欢迎各位的关注,第一时间阅读我的文章。最近在做项目的的时候,遇到一个TS类型的问题,需要使用到TS中的。的了解,想要实现我们的需求,

2023-06-06 09:59:14 402

原创 React 代码拆分的几种方式

中的代码,以免我们的项目体积太大,导致加载时间长,影响用户体验。当我们项目越来越大的时候,代码的体积会变得庞大,导致我们项目的加载速度变慢,特别是如果您包含大型第三方库。es6提供import()函数,它是运行时执行,也就是说,什么时候运行到这一句,就会加载指定的模块。是一个高阶组件,允许您将代码拆分为更小的块并按需加载,支持服务端渲染,使用方式比较简单。小伙伴们可以分析下你们项目的依赖,把一些模块拆成独立的模块,减少代码体积。」,里面已有多篇原创文章,和开发工具,欢迎各位的关注,第一时间阅读我的文章。

2023-03-06 12:03:56 310

原创 阿里低代码框架 lowcode-engine 之设置默认容器

之前我们介绍了lowcode-engine一些基础相关内容,接下来我们通过引擎实战一些内容,在一些场景当中,我们的默认容器不是页面,而是需要自定义容器。例如,在常见的低代码平台中默认容器是表单容器。

2023-02-27 10:14:19 607

原创 阿里低代码框架 lowcode-engine 之自定义设置器

lowcode-engine 设置器主要用于低代码组件属性值的设置,顾名思义叫"设置器",又称为 Setter。由于组件的属性有各种类型,需要有与之对应的设置器支持,每一个设置器对应一个值的类型

2023-02-13 10:00:10 1141 2

原创 写了个脚本,抓取notion emoji svg资源

最近在做emoji表情,在windows环境预览效果不太理想,也缺少很多字体图标的显示,为了让各种环境显示一致,决定用svg图片代替字体图标。抓取notion资源

2023-02-06 16:41:17 251

原创 你会用RxJS吗?【初识 RxJS中的Observable和Observer】

RxJS是一个库,可以使用可观察队列来编写异步和基于事件的程序的库。RxJS 中管理和解决异步事件的几个关键点:Observable,Observer, Subscription,Operators。

2022-09-05 18:27:10 429

原创 TS 泛型推断好难啊,看看你能写出来不

最近做东西都在用ts,有时候写比较复杂的功能,如果不熟悉,类型写起来还是挺麻烦的。有这样一个功能,在这里,我们就不以我们现有的业务来举例了,我们还是已Animal举例,来说明场景。

2022-08-16 08:00:00 389

原创 pnpm 的 workspace 实现 monorepo 工程

前端多个包管理的的方式一般都是采用`monorepo`的方式去管理,之前都是使用的`lerna`的workspace去管理。这段时间包管理切换到了`pnpm`上,它也有worksapce,可以支持`monorepo`。

2022-08-12 10:56:35 4181

原创 React 重新渲染指南

React 重新渲染的综合指南。该指南解释了什么是重新渲染,什么是必要的和不必要的重新渲染,什么情况下会触发 React 组件重新渲染。

2022-08-11 08:30:00 7889

原创 阿里低代码框架 lowcode-engine 之自定义物料篇

今天我们主要来说下低代码比较核心的东西之一物料,就是我们低代码框架怎么支持和使用我们自己写的组件。物料是页面搭建的原料,按照粒度可分为组件、区块和模板:

2022-08-08 16:54:35 4252 4

原创 Umi4 集成阿里低代码框架lowcode-engine

最近准备研究下阿里低代码框架lowcode-engine, 官方Demo是提供好的脚手架,由于我们的框架使用的是umi,官方文档提供了一些教程,在此记录下在umi4集成lowcode-engine.

2022-08-04 16:21:29 4789 6

原创 git commit 内容不合规,代码提交不上去,怎么办

git commit 内容提交不上去,怎么办,可以试试 git commit --amend 和 git reabase 来修改commit内容

2022-07-27 11:00:12 3478 1

原创 微前端(qiankun)主应用共享React组件

最近需要重构一个老项目,定的方案用微前端去改造。主应用是老的项目,微应用是新的项目,由于重构时间比较紧张,子应用还需要使用父应用的一些组件。

2022-06-08 16:47:44 3616 5

原创 nginx 部署前端资源的最佳方案

nginx 部署前端资源的最佳方案,设置html入口文件走协商缓存,js文件和其它类型的资源文件走强缓存。

2022-06-08 10:56:09 404

原创 测试同学问我为什么每次让我清缓存(聊聊浏览器的缓存)

浏览器缓存是为了节约网络的资源加速浏览。浏览器缓存主要有两类:强缓存:cache-control,Expires 缓存协商:Last-modified,Etag。

2022-01-21 16:51:52 1731

原创 前端也要会【异或运算】

前言在前端的日常开发当中,我们很少用到异或运算,但在一些框架源码当中,会有用到异或运算。我们在阅读源码的时候,会造成代码的不理解,今天我们介绍一下异或运算。概念异或,英文为exclusive OR,缩写成eor.异或(eor)是一个数学运算符。它应用于逻辑运算。异或的数学符号为“⊕”,计算机符号为“eor”。其运算法则为:运算规律相同为0,不同为1举例说明:有两个二进制数,分别为a和b,他们两个异或计算。一个值于0异或,都是这个数a ^ 0 = a任何数跟自己异或,都为0a ^ a

2021-09-27 14:05:07 326

原创 面试了十几个高级前端,竟然连(扁平数据结构转Tree)都写不出来

前言招聘季节一般都在金三银四,或者金九银十。最近陆陆续续面试了十几个高级前端。有一套考察算法的小题目。后台返回一个扁平的数据结构,转成树。我们看下题目:打平的数据内容如下:let arr = [ {id: 1, name: '部门1', pid: 0}, {id: 2, name: '部门2', pid: 1}, {id: 3, name: '部门3', pid: 1}, {id: 4, name: '部门4', pid: 3}, {id: 5, name: '

2021-09-05 23:19:34 231

原创 (开源)给图片编辑器添加了辅助线

前言上篇我们介绍了做的图片编辑器,大部分工具类的软件都有辅助线,方便拖拽元素的时候对齐,能让我们快速的做出漂亮的图片。 这两天给编辑器加上了辅助线, 辅助线实现过程稍微有些复杂,我们一步步说下实现过程。演示演示地址实现流程原理讲解左侧辅助线出现我们以节点2为移动的元素,通过上面的图观察我们可以看出,当左侧辅助线出现的时候,节点1的x坐标和节点2的x坐标相等的时候辅助线就会出现,我们移动节点2的时候动态去判断。右侧辅助线出现我们以节点2为移动的元素,通过上面的图观察我们可以

2021-08-19 14:22:21 487

原创 (开源) 从零实现一款图片编辑器

前言今年计划开始写文章,各大平台发布的时候需要上传一个封面图,市面上有好多比较成熟的图片编辑器。之前也做过一些偏工具类的应用,于是萌生想法,自己能不能搞一个编辑器,供掘友们使用,大概花了四五天的时间,第一版内容已经有了。案例演示演示地址演示地址快速启动git clone [email protected]:jiechud/fast-image-editor.gityarn install || npm installyarn dev 启动服务打开浏览器项目目录.├── canvas-

2021-08-19 14:20:13 1635

原创 我们是如何封装项目里的共用弹框的

前言随着产品的迭代,项目里的弹框越来越多,业务模块共用的弹框也比较多。在刚开始的阶段,有可能不是共用的业务弹框,我们只放到了当前的业务模块里。随着迭代升级,有些模块会成为通用弹框。简而言之,一个弹框会在多个页面中使用。举例说下我们的场景。项目当中有这样一个预览的弹框,已经存放在我们的业务组件当中。内容如下import React from 'react';import {Modal} from 'antd';const Preview = (props) => { const {v

2021-07-26 18:00:14 242

原创 微前端落地,悬着的心终于放下了

前言产品提出系统要模块化,通过不同的模块组合构建我们的应用。这不是最近很火的微前端吗,和组内的小伙伴经过一番沟通,带着压力开始搞起来了,经过三个月的迭代开发,在业务开发的同时,把两个模块迁移成了子应用。系统上线了,悬着的心终于落下了。现有的系统状况分析现有的系统是一个独立的项目,采用umi框架开发,通过文件夹区分各大业务模块。公共组通过npm包的方式去管理。由于系统迭代时间比较久,架构上遗留的几个问题需要解决子应用采用ant4.x (antd用的3.x版本,升级antd4.x难度比较大,主要是Fo

2021-07-20 00:34:38 580

原创 完美解决 vscode gitlens 左侧导航图标不显示

前言vscode gitlens 更新后11.x版本后,左侧导航栏图标不见了。困扰好几天,经过查找发现vscode-gitlens仓库issues上提到了解决方法。参考https://github.com/eamodio/vscode-gitlens/issues/1216过程打开vscode命令面板,windows下ctrl+shift+p, mac 下为 command+shift+p。输入gitlens,选中Set Views Layout接下来然后选中GitLens Layout ,我们

2021-01-12 10:47:24 6860 3

原创 React入门到精通(使用umi创建React项目)

环境准备现在是大前端时代,开发项目得有node,并确保 node 版本是 10.13 或以上。(Mac建议用nvm阿里管理node)。推荐使用yarn来管理依赖,建议使用国内阿里源,切换源。推荐使用 nrm来管理源yarn config set registry https://registry.npm.taobao.org脚手架我们在一个空的地方创建一个目录mkdir app && cd app通过命令创建项目yarn create @umijs/umi-app 或

2021-01-11 23:26:00 1107

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除