TypeScript
TypeScript小技巧(二)
TypeScript本文介绍了TypeScript中引入的using关键字和satisfies操作符的使用:using简化了资源管理,自动调用[Symbol.dispose]方法释放资源,而satisfies则用于确保对象符合特定类型,同时限制对象属性的扩展。
在NextJS14中集成twikoo评论系统
NextJSTypeScript本文介绍了在NextJS中集成Twikoo的方法。此外,提到NextJS在使用notFound API时可能存在的bug及解决方案。
在NextJS中为rehype代码块添加复制按钮
ReactTypeScript本文介绍了作者在博客中使用rehype-pretty-code和shiki来美化代码块时,如何通过React Server Components和自定义MDX组件,解决在NextJS中使用带复制按钮的代码块时遇到的问题,并在不同的格式(MDX和Org-mode)下实现了功能的具体方法。
开发docube问题记录
OrgTypeScript本文介绍了作者将博客内容格式从MDX迁移到Org-mode的过程中,开发了一个名为Docube的JavaScript/TypeScript库,并在文中详细描述了库的设计理念、实现细节以及在发布npm包时遇到的问题和解决方法。
关于TypeScript结合React开发的一些技巧
ReactTypeScript这篇文章介绍了作者在前端项目中使用 TypeScript 与 React 的一些经验。文章首先推荐使用 TypeScript 的自动推断功能,这样可以减少一些类型标注的工作。然后介绍了一些 TypeScript 的工具类型,如 Omit 和 Pick,这些工具类型可以帮助我们重用类型定义,避免重复工作。接着,文章讨论了在 TypeScript 中引入不明确性的问题,并推荐使用 declare 全局声明和声明合并来解决这个问题。此外,文章还介绍了 useRef 的类型,以及如何使用类型收窄和条件渲染来实现更简洁的代码。最后,文章给出了如何解决项目中大量的条件渲染问题的一些建议,例如使用组件工厂或组合。
TypeScript实现互斥参数
ReactTypeScript作者想通过 typeScript 的类型定义来限制一个函数的两个参数只能取其一。但是按照 TypeScript 的类型系统,直接将参数定义为两个 interface 的联合类型是没有用的,因为联合类型允许同时存在两个类型的值。而 `never` 类型可以表示一个只会抛出异常或者内部死循环的函数的返回值,并且任何其他类型的值都不能赋值给这个类型的变量,作者利用这个性质来限制了参数的取值范围,从而保证用户只会使用两个互斥属性中的一个。