锤子前端

  1. #开源 #网页工具 网页播放器样式

    #开源 #网页工具 网页播放器样式

    https://player.style/ player.style - Video & audio player themes for every web player & framework

  2. #文章 简化网站的 favicon 配置,只需要六个文件!

    #文章 简化网站的 favicon 配置,只需要六个文件!

    https://blog.ghkk.net/post/how-to-favicon-in-2021-six-files-that-fit-most-needs/ 在2021应该怎样配置 Favicon:用六个文件来适配大多数需求

  3. #文章 关于如何使用TypeScript发布基于ESM(ECMAScript模块)的npm包的教程文章

    #文章 关于如何使用TypeScript发布基于ESM(ECMAScript模块)的npm包的教程文章。

    https://2ality.com/2025/02/typescript-esm-packages.html

  4. #文章 富文本编辑器怎么选择?虽然文章夹带私货,但是对比了大多富文本库

    #文章 富文本编辑器怎么选择?虽然文章夹带私货,但是对比了大多富文本库

    https://liveblocks.io/blog/which-rich-text-editor-framework-should-you-choose-in-2025 Which rich text editor framework should you choose in 2025? | Liveblocks blog

  5. #文章 js分解长任务的方法

    #文章 js分解长任务的方法

    以下是文章中提到的几种方案:


    1.setTimeout()+递归
    通过递归调用setTimeout(),将任务拆分成多个事件循环的tick,避免长时间阻塞主线程。


    2.异步/等待+定时器
    利用async/await结合setTimeout(),简化任务拆分逻辑,避免递归,代码更简洁易读。


    3.scheduler.postTask()
    使用Scheduler接口的postTask()方法,以更高效和可控的方式调度任务,支持设置任务优先级。


    4.scheduler.yield()
    通过Scheduler接口的yield()方法,在任务执行过程中释放主线程,让浏览器有机会处理其他任务,保持响应性。


    5.requestAnimationFrame()
    利用requestAnimationFrame()在浏览器重绘周期之前调度任务,适合与渲染相关的任务,但可能影响渲染性能。


    6.MessageChannel()
    通过MessageChannel实现任务拆分,类似于零延迟的setTimeout(),但实现较为复杂,适合对性能要求较高的场景。


    7.Web Workers
    将任务移至主线程之外的Web Workers中执行,完全避免阻塞主线程,适合可以离线处理的复杂任务。

    https://macarthur.me/posts/long-tasks/ There are a lot of ways to break up long tasks in JavaScript.

  6. #开发工具 Github 拉取代码仓库,账户密码的方式不可用了,推荐的方式是创建并管理身份凭据,管理方式有:

    #开发工具 Github 拉取代码仓库,账户密码的方式不可用了,推荐的方式是创建并管理身份凭据,管理方式有:

    1. brew install gh
    2. brew install --cask git-credential-manager

    https://docs.github.com/zh/get-started/getting-started-with-git/caching-your-github-credentials-in-git

  7. #React #文章 useSyncExternalStore 实践应用:如何构建 React 库

    #React #文章 useSyncExternalStore 实践应用:如何构建 React 库

    https://tigerabrodi.blog/how-to-build-a-library-in-react How to build a library in React