- 博客(229)
- 问答 (1)
- 收藏
- 关注
原创 【homebrew安装】踩坑爬坑教程
看到这个报错时,基础功能已经安装成功,可能是网络问题,连接 Homebrew 官方服务器可能不稳定,特别是在中国等网络环境受限的地区。如果安装成功,但 brew 命令依然无法找到,可能是 Homebrew 的路径没有正确配置。命令行不存在,那么请先按照下面第2节,配置brew的bin文件到环境变量Path中,如果你看到 Homebrew 的版本信息,说明安装成功并配置正确。macos在安装时可能会遇到如上述的报错,可以增加以下设置。,而在 Intel Mac 上,通常会安装在。执行上述安装脚本时,走到。
2024-09-16 07:59:28 1082
原创 【RBAC鉴权】node-casbin基础教程
RBAC鉴权,完整的英文描述是:Role-Based Access Control,中文意思是:基于角色(Role)的访问控制。这是一种广泛应用于计算机系统和网络安全领域的访问控制模型。简单来说,就是通过将权限分配给➡角色,再将角色分配给➡用户,来实现对系统资源的访问控制。一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般者是多对多的关系。
2024-05-02 22:36:42 1255
原创 LowCodeEngine基础教程
复制自定义组件中的packages和components信息。根目录\build\lowcode\assets-prod.json追加到本地demo项目中根目录\src\services\assets.json,将上述packages和components信息追加到对应的属性中。再次启动本地demo项目,可以看到新增了一个【默认分组】方式 1:在 DEMO 中直接新增插件方式 2:在新的仓库下开发插件初始化pnpm i。
2024-04-08 22:43:44 2031
原创 【Nestjs实操】typeorm一对多如何配置
有两张表,分别是Menu和Page,一个menu下会关联有多个page,如下图:要实现这种一对多的关系,我们要使用typeorm的@OneToMany和@ManyToOneMenu@OneToManyPagePage@ManyToOneMenu。
2024-03-31 23:29:05 794
原创 【@changesets/cli】变更集实战教程
前端目前基于Monorepo架构的npm包开发很普遍,在开发完毕后,我们需要对包进行版本号升级,并且部署,这些操作如果是手动来操作的话,很麻烦,而且容易出错。我们在发版的时候,需要手动去更改corelayoutplugins三个插件包的版本号。并且如果要查看每个包的变更迭代的话,需要单独查看子包的git log进行查看,但是有时git log的记录不代表版本真正的迭代变更,最常见的是子包的一个特性开发,会分成多个commit去提交。
2024-03-25 16:41:21 1488
原创 【Nestjs实操】服务依赖注入
在文件中,注入服务时,上面的方式是直接在providers中配置服务类型就可以了,系统会自动到服务注册容器中去检索对应的服务。@Module({providers: [AppService],//直接写服务类名称})@Module({provide: AppService, //声明服务名称useValue: new AppService(),//声明服务使用的服务类}],})@Module({provide: "app",//这里改成字符串名称}],})...可以看到在。
2024-03-09 13:41:48 725
原创 linux上mysql服务启动失败:[ERROR] Failed to create a socket for IPv4 ‘0.0.0.0‘: errno: 13
ubuntu_20服务器上,基于docker创建了的mysql容器,一直能稳定运行。当时当我在linux使用apt直接安装apache2和mysql后,再次启动mysql容器就会失败。可以看到,容器在创建时就报错。那么猜测应该就是之前linux上安装的apache2或mysql导致网络端口被占用导致的,那么只需要停止这两个服务就行。
2024-02-25 16:14:59 518 1
原创 【Docker实操】创建一个Nginx服务
创建宿主机和虚拟机中目录映射,改变宿主机中的文件,会自动同步虚拟机中对应的文件。是否自动做了修改,最后查看访问页面时,是否做了也同步修改了。再次访问页面,我们看到页面中内容已经更新。还是拿上面的容器,我们尝试修改宿主机中。成功启动后,可以在使用。
2023-12-03 15:57:56 921
原创 npm publish发布到在线仓库时,提示:Scope not found
这是由于包名是`@xxx/xxx`形式造成的。如果包名是`@`开头,需要到npm官网先创建一个组织。3. 进入创建组织页面,输入组织名称。(这里不需要加上`@`符号)4. 再次执行`npm publish`命令,这是就可以正常发布。1. 注册`npm`官网账号,并且进入个人中心。2. 看到页面左侧菜单栏,点击后面的加号。**具体步骤如下:**
2023-10-21 09:53:26 1638
原创 Umi3实战教程
umi是蚂蚁金服的前端开发框架,它内置了路由、web/移动端UI库、数据流、权限控制、常用hooks库、构建、部署、测试、等等一些工具,几乎涵盖了正常前端开发要用到的所有工具。
2023-10-17 19:43:15 1519
原创 【Monorepo实战】pnpm+turbo+vitepress构建公共组件库文档系统
Monorepo架构可以把多个独立的前端系统放到一个仓库中去进行联调,这里记录基于pnpm中workspace功能,如何构建将vitepress和组件库进行联调,并且使用turbo进行任务顺序编排。
2023-10-09 16:57:55 2027
原创 CMD脚本实战教程
要在 Windows 11 上编写一个自定义关机的 CMD 脚本文件,你可以创建一个扩展名为.bat或.cmd的文本文件,并在其中编写脚本。
2023-09-22 17:34:41 5753
原创 Vite和Webpack如何使用CDN包
为了精简打包输出的dist目录大小,我们可以引入CDN外部包的方式,来缩小打包的体积,加快打包速度。这里介绍Vite和Webpack中如何引入。
2023-09-07 20:39:18 1241
原创 1、Flutter移动端App实战教程【环境配置、模拟器配置】
下载更新环境变量,添加变量,并在PATH中添加运行,检测尚未安装的软件,打【X】的表示需要安装。安装,安装过程中会自动安装。(步骤6也是在此IDE中完成)进入,安装修改源,添加以下两个环境变量配置完成后,再次执行,显示如下:除了这个IDE没有安装,因为暂时不需要开发Window桌面程序,其他都已经安装成功。
2023-09-03 21:45:50 3142
原创 【Ant Design】Form.Item创建自定义表单,实现类似v-model双绑
Antd是一个非常强大的UI组件库,里面的Form表单组件也基本能满足我们大多数场景。但是也有需要自定义表单的场景。Vue2里我们使用v-model,结合子组件的model属性,来实现自定义组件的双向绑定。Vue3里我们使用v-model,结合子组件的来实现同样功能。到了React+Antd中,我们采用引用父组件默认传入onChange事件,子组件调用来实现。
2023-09-01 17:20:39 2133
原创 React开发技巧
永远以use开头自定义Hook中正常需要调用系统Hook,否则也就不用定义为自定义Hook。(技术上 React 对此并不强制要求。自定义Hook必须在函数式组件的顶层进行调用案例地址。
2023-08-22 10:51:42 306
原创 SpringBoot中Mapper.xml的入参方式
在SpringBoot开发过程中,我们使用来封装对数据库表的CURD操作,正常每张表会有一组对应的文件。
2023-08-21 13:52:01 1772
原创 使用pnpm workspace管理Monorepo架构
pnpm代表(高性能的npmn),同npm和yarn,都属于javascript包管理安装工具,它较npm和yarn在性能上得到很大提升,被称为快速地,节省磁盘空间的包管理工具。默认情况下,如果可用的 packages 与已声明的可用范围相匹配,pnpm 将从工作区链接这些 packages。例如, 如果bar引用并且foo@1.0.0存在工作区,那么pnpm会从工作区将foo@1.0.0链接到bar。但是,如果bar的依赖项中有,而foo@2.0.0。
2023-08-19 17:39:04 5955
原创 7、Java入门教程【面向对象】
面向对象是Java编程的核心概念,如果不能充分了解面向对象的思想,那么会给你在实际的项目开发过程中,带来很多业务设计上的困扰。
2023-07-26 21:49:26 268
原创 5、Java入门教程【循环+条件语句】
continue 适用于任何循环控制结构中。作用是让程序立刻跳转到下一次循环的迭代。while 循环中,程序立即跳转到布尔表达式的判断语句。break 主要用在循环语句或者 switch 语句中,用来跳出整个语句块。在 for 循环中,continue 语句使程序立即跳转到更新语句。switch可以实现的逻辑,if都可以实现。if还支持区间匹配。break 跳出最里层的循环,并且继续执行该循环下面的语句。执行时,一定会先进行匹配,匹配成功返回当前。,判断是否继续输出,或是跳出判断。switch(变量)
2023-07-19 08:59:08 229
原创 4、Java入门教程【运算符】
Java定义了位运算符,应用于整数类型(int),长整型(long),短整型(short),字符型(char),和字节型(byte)等类型。算数运算符除了加减乘除以外,还有特殊的是自增和自减运算。先进行自增或者自减运算,再进行表达式运算。位运算符作用在所有的位上,并且按位运算。从上到下优先级为由高到低。
2023-07-17 22:07:17 487
原创 3、Java入门教程【数据类型】
java中数据类型分为两大类:【基本数据类型】和【引用数据类型】[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SkAQxcic-1689514989267)(C:\Users\a\AppData\Roaming\Typora\typora-user-images\image-20230715145246736.png)]
2023-07-16 21:43:43 196
原创 2、Java入门教程【IDEA】
输入psvm/main,按下回车即可快速生成主函数2.2 sout输入sout,按回车,快速生成打印语句输入fori,生成普通for循环语句;输入iter,生成加强for循环语句2.4 自定义在IDEA界面中将光标移动到即可自定义快捷键方式。
2023-07-15 14:42:21 678
原创 1、Java入门教程【基础】
首先java的产品叫,必须安装JDK才能使用Java。Java的发展史:其中,LTS是比较稳定的版本,推荐比较新的版本。安装完成后,可以看到在安装目录下的目录,有java和javac两个可执行文件。java.exe:执行工具javac.exe:编译工具可以看到,显示正常,并且版本号也和我们安装的一致。到这里JDK就已经安装成功了。我这里是下载的.exe安装包自动安装,会自动配置环境变量到Path变量中去,如果是下载的压缩包,那就需要手动去配置环境变量。
2023-07-15 14:40:55 444 1
原创 如何将Typora中图片上传到csdn【Gitee图床】
实现了Typora本地编辑的内容中的图片,可以直接复制到csdn上进行发布。但是在使用过程中发现sm.ms这个图床站不是很稳定,即使用了翻墙也不稳定,所以想看看使用其他的国内的图床平台。这篇文章推荐使用作为图床,上传速度实测挺给力。
2023-07-15 14:26:50 1616
原创 Groovy基础教程
Groovy是一种基础JVM(Java虚拟机)的敏捷开发语言,他结合了Python、Ruby和Smalltalk的特性,Groovy代码能够于Java代码很好的结合,也能用于扩展现有代码。由于其运行在JVM的特性,Groovy可以使用其他Java语言编写法的库。
2023-06-19 16:05:24 10912
原创 解决Antd Tree组件,二次点击时不取消选中,保持高亮
然而大多数业务场景下,我们希望多次点击同一个节点不会取消他的选中效果。支持点击高亮树节点,再次点击取消高亮。
2023-06-12 09:23:21 2181 2
原创 window10安装vim编辑器
我们在做git操作的时候,很多文字编辑工作会默认打开Vim编辑器来进行操作。Vim是一个高度可配置的文本编辑器,旨在让创建和更改任何类型的文本变得非常高效。大多数和都将它作为vi包含在内,用惯了中的Vim编辑器,如果需在的中编辑文件,则需要单独安装视窗版的Vim。
2023-05-30 22:19:34 4216
原创 VirtualBox安装增强功能
在刚安装完的VisualBox中,默认屏幕是固定设置的,不会根据实际的窗口大小做自适应,这时候我们需要【安装增强功能】,然后打开【自动调整显示大小】,就可以实现虚拟机中屏幕自适应。宿主机:window10。
2023-05-28 00:17:57 7890
空空如也
egg如何添加nunjuck模板自定义过滤器?
2021-05-15
TA创建的收藏夹 TA关注的收藏夹
TA关注的人