Maple's Blog.

Maple's Blog.

keep coding and having fun

TypeScript Type 类型判断
TS 中官方支持的方法里,判断 Type 类型的有: typeof ,但是遗憾的只支持基础类型 instanceof,只支持类 也就是混合的自定义 Type 而言,官方是没有常见的函数来进行判断。不过 TS 也给了办法。 先说怎么判断,TS 的类是通过参数字段来判断是否是同一个类型的 Type。也是满足字段类型相同的变量,就可以认为是属于某一个 Type。 所以可以通过 in 来判断是否包含某个字段。 初始先定义一些类型: 123456789101112interface A { a: string}interface B { a: number ...
Python3 安装 mailer 失败
from: https://bobbyhadz.com/blog/python-error-in-package-setup-command-use-2to3-is-invalid 原因: mailer 是 Python2 的包。在 Python3 环境安装会因为 setuptools 默认版本过高,导致安装失败。 解决方案: 安装低版本 setuptools 1pip install --upgrade pip "setuptools<58.0"
TypeScript 重载
函数重载 1234567// 声明和实现写在一起function t1(p: string): number;function t1(p: number): string;function t1(p: string | number) { return typeof p === 'string' ? Number(p) : String(p);} 类方法重载和函数重载其实是一样的。 是需要在类的方法上面,写上声明。 之前查询说必须要基于类的声明实现,其实是不需要的。 不过如果是基于 interface 实现类,那相当于把 inte...
rabbtmq 笔记 & demo
基本首先熟悉几个概念: exchange 交换器,可以认为是消息 publish 的目的地。 所有消息都是推送到 exchange 的 queue 队列,consume 监听的位置 queue 其实和 publish 没有任何关系 只是为了方便多个消费者消费同一个消息 流程 创建 exchange,也可以复用已存在的 exchange。 如果 exchange 已存在则不创建 如果已存在的 exchange 的属性与代码配置的不符合则报错 consumer 创建 queue 如果已经存在则改为获取 queue,参数以存在的为准,如果链接的 queue 参数不符合就报错 ...
黑群晖新引导洗白(转载)
原文 在前面的文章中,我们利用ARPL引导将黑群晖安装好了。有朋友就问我,ARPL安装的黑群晖洗白和其他的不一样了,该怎么洗白?这篇文章为你解答。 原理其实洗白的主要就是修改引导里面的 sn 和 mac 地址。 我们只需要找到引导里面的 sn 和 mac 地址就好了。 而 APRL 引导中, sn 和 mac 地址都在 user-config.yml 中。 也就是说,修改这个文件就好了。 操作知道了原理,操作就简单了。 第一步,我们需要开启群晖的SSH,这一步相信大家都很熟悉,这里就不累述。 第二步, SSH 连接上群晖。 第三步,sudo -i 切换到 root 权限下。 第四步,创建...
廖雪峰 Python 教程笔记
教程地址: https://www.liaoxuefeng.com/wiki/1016959663602400 生成器和迭代器12345678910111213141516171819202122# 构建生成器def odd(): times = 0 while True: yield times times = times + 1 if times > 10: # break return 'some value'# for 循环for t in odd(): ...
Java中PO,VO,POJO,DTO,DAO的基本概念
[转载] (https://developer.aliyun.com/article/19761) **PO:**persistant object持久对象最形象的理解就是一个PO就是数据库中的一条记录。好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。 BO:business object业务对象主要作用是把业务逻辑封装为一个对象。这个对象可以包括一个或多个其它的对象。比如一个简历,有教育经历、工作经历、社会 关系等等。我们可以把教育经历对应一个PO,工作经历对应一个PO,社会 关系对应一个PO。建立一个对应简历的BO对象处理简历,每个BO包含这些PO。这样处理业务逻辑时,...
MySQL 启动 error [InnoDB: Missing MLOG_CHECKPOINT]
123456782023-02-28 9:38:50 0 [ERROR] InnoDB: Missing MLOG_CHECKPOINT at 6701716404 between the checkpoint 6701714063 and the end 6701716404.2023-02-28 9:38:50 0 [ERROR] InnoDB: Plugin initialization aborted with error Generic error2023-02-28 9:38:51 0 [Note] InnoDB: Starting shutdown...2023-02...
RabbitMQ 重启后无法启动问题
问题1234567891011121314151617181920212223242526272829303132333435363738394041424344BOOT FAILED===========Error description: init:do_boot/3 line 817 init:start_em/1 line 1109 rabbit:start_it/1 line 474 rabbit:broker_start/1 line 350 rabbit:start_loaded_apps/2 line 600 app_utils:man...
谈谈 es module
es module 估计很多人和我一样,纠结为啥 nodejs 要换 module 引入方式,难道 nodejs 真的作为前端小工具存在了? import export 对于前端而言,最大的优势是异步引入依赖,这样,在加载文件的过程中,前端 js 其实是属于 wait 的状态,而不是同步堵塞,这对前端而言意义重大。 而 nodejs 作为后端,加载速度可以说毫无压力,之前在前东家,算是比较大的项目,加载速度也不过几十秒。况且,后端完全不在乎启动速度。 更更更何况,用异步和同步的方式去加载文件,速度都是一样的,区别是同步 cpu 是堵塞,异步 cpu 是活动。很多小白会以为异步加载会快一点...
avatar
Maple
coding & have fun