跳至主要內容
分享一些有用的 ESlint 规则
禁止全局变量 防止在你的项目由同名的类型和全局变量冲突,例如 Node 禁止导入 防止导入一些禁止使用的库 自动删除未使用的导入 依赖包 eslint-plugin-unused-imports; 配置

muzzik小于 1 分钟笔记编程语言TypescriptESlint
你了解 await 吗?

在工作中,我发现在执行一个 await aaa?.bbb 语句时,就算 aaa 为 null,也会异步执行后面的代码,而不是同步,这引起了我的好奇心探索它


muzzik大约 2 分钟笔记编程语言TypescriptJavascript
类型安全的单例基类
适配: 构造参数类型; 函数返回类型; 来自于 MKFramework 为什么不采用 getter 的方式替代 function 接口? getter 类型并不通用: 1. 如果构造参数是动态的情况下初始化默认值,getter 并不适用 2. 如果你想要一个单例和多实例的 class,那么也不能用 getter 例子:日志类,存在一个默认的全局日志对象...

muzzik小于 1 分钟笔记设计模式Typescript单例模式
typescript-eslint 太香了
晚上试用了一下, 竟然支持我最爱的蛇形命名法 typescript-eslint + prettier 配置如下,需要的可以根据自己习惯自行调整 package.json .eslintrc(注意前面有个点) .eslintignore 需要安装的需要把上面几个文件的内容复制到自己项目中,然后再 npm i ,再安装 vscode 内的 eslint ...

muzzik小于 1 分钟文章编程语言TypescriptESlint
浅谈自己的编程风格
# 前言 此篇闲聊贴,大家可以随意发表自己的意见 # 命名风格 蛇形命名法; 也就是类似 username_ 原因; 强迫症 以前用驼峰,现在项目要求也用驼峰,不过我私下还是蛇形,嘿嘿嘿 虽然是蛇形,不过我还是有一套自己 久经考验 # 命名结构 变量含义在前,变量类型在后, boolean:; string:; number:; object:若是类型...

muzzik大约 3 分钟文章编程语言Typescript
monitor 数据监听器(低成本搭建界面,MVVM 必备)
它的功能很简单,监听数据的修改 # 可以用它做什么? 数据到视图; 视图到数据; debugger; # 效果演示 ! (https://forum.cocos.org/uploads/default/optimized/3X/9/9/995aa55fdc4b5b5c32f437bc1ebfd9ab22b4d7e92430x500.gif =430x5...

muzzik大约 1 分钟实用工具编程语言设计模式TypescriptMVVM 模式
如何更优雅的解决循环引用?
# 全局法 每个模块都注册到全局; 每个模块注册到全局唯一键中; # 合并法 将依赖的类全部放在一个模块内 # 间接法 假如 a 与 b 模块互相依赖,那么就将依赖的功能代码搬到 c 模块,c 模块引用 a 和 b # 动态加载法 把静态 import 修改为动态, 缺点是将跳过模板类型检查,以及不能 "立即使用" 直接在使用处 import(“mod...

muzzik小于 1 分钟文章编程语言Typescript
TS注解
箭头函数 1. 箭头函数的 this 指向为 所在上下文(函数定义所在上下文) 的 this(如 func2 中的 this 指向就为 test , 而 func3 则为 window) 2. bind、call、apped 不能改变 this 指向 普通函数 1. 普通函数的 this 指向为调用对象(如 test1.func1() 的 this 指...

muzzik小于 1 分钟笔记编程语言Typescript
导出式单例和函数式单例的区别
大家或多或少都用过单例模式,那么我就在这里和大家说说这两种单例的区别: 导出式单例 这种单例很方便, 但也是因为方便,这个导出的单例在脚本加载时就已经创建好了对象。特别是在 construct 里面初始化资源或者计算的一些类,会严重拖慢启动速度。 函数式单例 推荐使用这种方式,在第一次获取时创建,构造也能分开进行。但是写多了单例类之后你就会发现。每次都...

muzzik小于 1 分钟笔记设计模式Typescript单例模式
2