视野修炼-技术周刊第46期

简介: 🔥强烈推荐1. killport - 优雅的结束占用端口的进程一个 Rust 语言写的命令行程序,可以杀死占用指定端口的进程。通常我们在开发过程中,会遇到端口被占用的情况常规方式需要如下两步(① 查找占用端口的进程 ② 杀死进程)

🔥强烈推荐

1. killport - 优雅的结束占用端口的进程

一个 Rust 语言写的命令行程序,可以杀死占用指定端口的进程。

通常我们在开发过程中,会遇到端口被占用的情况

常规方式需要如下两步(① 查找占用端口的进程 ② 杀死进程)

image.png

使用 killport 可以一步到位,直接杀死占用端口的进程

       image.png                                      

工具安装也非常简单

curl -sL https://bit.ly/killport | sh

非常实用的工具,推荐大家使用,杠杠的提效

2. 两个值得关注的stage3的提案

       image.png                                      

  1. Promise.withResolvers

很多场景下我们希望在 new Promise 外部访问 resolvereject,当下的方式是通过定义外部变量的形式解决

let resolve, reject;
const promise = new Promise((res, rej) => {
  resolve = res;
  reject = rej;
})
// 其它逻辑里调用 resolve 和 reject

我们可以使用 Promise.withResolvers 来更优雅的解决这个问题

const { promise, resolve, reject } = Promise.withResolvers();
  1. Array Grouping

从名称就很容易看出来是做数组分组的,目前我们大部分情况是通过 reduce 来实现分组

const array = [1, 2, 3, 4, 5];
array.reduce((acc, num) => {
  const key = num % 2 === 0 ? 'even': 'odd';
  acc[key] = acc[key] || [];
  acc[key].push(num);
  return acc;
}, {});

通过这个提案可以更优雅的实现

const array = [1, 2, 3, 4, 5];
Object.groupBy(array, (num, index) => {
  return num % 2 === 0 ? 'even': 'odd';
});
// =>  { odd: [1, 3, 5], even: [2, 4] }

大家现在也可在生产中通过 core-js 的 polyfill 实现使用这个特性

🔧开源工具&技术资讯

3. Chrome 115 有哪些值得关注的新特性?

扫了一眼,感觉 CSS display 多值语法挺有意思

允许分别指定内外两个 display 类型。

/* 创建一个块级容器,具有 Flex 子元素。 */
.box {
    display: block flex;
}
/* 创建一个内联容器,具有 Flex 子元素。 */
.box2 {
    display: inline flex;
}

4. pkg-size - 在线分析npm包大小

基于 WebContainers ,在浏览器环境下运行Node安装npm包,实现的包大小在线分析工具

       image.png                                      

5. pnpm 下载量远超 yarn

       image.png                                      

2023了,除了迁移不动老项目,大部分项目都使用上pnpm了

又节省磁盘空间,安装依赖又快

6. Dan 即将从Meta React团队离职

Dan AbramovReact.js 核心开发者Redux 作者

       image.png                                      

image.png

🤖AI工具&资讯

7. Meta 开源 Llama 2 大模型

       image.png                                      

相关文章
|
5月前
|
文字识别 安全 前端开发
视野修炼-技术周刊第57期
🔥强烈推荐 1. Rspress - 基于 Rspack 的高性能静态站点生成器 由 ByteDance Web Infra 团队孵化的一款静态站点生成器,使用 Rspack 进行构建,基于 React 框架进行渲染,支持 MDX 内容开发,主打高性能、简单易用和定制性强。
|
5月前
|
人工智能 前端开发 小程序
视野修炼-技术周刊第58期
🔥强烈推荐 1. LocalSend - 开源的跨平台文件传送软件 不需要互联网连接,依靠共享 Wifi 分享文件。
|
5月前
|
存储 人工智能 前端开发
视野修炼-技术周刊第61期
🔥强烈推荐 1. 2023年🧑‍💻工程师的 Mac 工具箱 Arc - 浏览器, Warp - 终端, Raycast - 启动器,Orbstack - 容器,Setapp - 软件订阅,CleanShotX - 截屏,OBS - 录屏推流,Gifox - Gif图制作, 1Password - 密码管理器,Bartender - 菜单栏管理,Downie - 视频下载,IINA / Infuse - 视频播放器,iRightMouse - 鼠标右键增强,PopClip / Bob - 鼠标工具 Arc 和 Warp 目前笔者一直在用,其它的看着也还不错,按使用场景可以试试 作者:粥里
|
5月前
|
JavaScript 前端开发 API
视野修炼-技术周刊第55期
1. disable-devtool - 一行代码禁用 devTool 如题可以用来防止网站被开发者工具调试,打开开发者工具后,页面会自动重定向到指定的页面
|
5月前
|
数据可视化 前端开发 JavaScript
视野修炼-技术周刊第60期
🔥强烈推荐 1. 通义灵码
|
5月前
|
Web App开发 前端开发 JavaScript
视野修炼-技术周刊第53期
🔥强烈推荐 1. rome 停止维护 9 月 2 日,Facebook 出品的前端工具链项目 Rome 宣布停止维护,团队相关成员也被解雇
|
5月前
|
Web App开发 人工智能 前端开发
视野修炼-技术周刊第64期
🔥强烈推荐 1. VueDraggablePlus - 祖师爷推荐拖拽库 支持 Vue2 和 Vue3 的拖拽组件库。祖师爷力荐🔥
|
5月前
|
Web App开发 人工智能 Rust
视野修炼-技术周刊第56期
🔥强烈推荐 1. Vite 的现状与未来展望 10 月 5 日 - 6 日,ViteConf 2023 在线举行,尤大发表了题为《The State of Vite》 的演讲,有如下几个值得关注的点: Vite 5.0 目前处于测试阶段(beta):停止支持已经 EOL 的 Node.js 版本;推荐使用ESM 🔥 Rolldown(使用 Rust 开发的 Rollup 替代品):Vite 团队正在研发 Rolldown,同时与 Rspack 团队合作开发一些共享的底层工具和功能
|
5月前
|
人工智能 Rust JavaScript
视野修炼-技术周刊第62期
🔥强烈推荐 1. Vite5.0 发布! 11 月 16 日,Vite 5.0 正式发布 该版本主要关注API优化,去除过时功能,并解决一些长期存在的问题。 使用了Rollup 4,这在构建性能方面有了很大的提升。 对Node.js的支持进行了调整,现在需要使用Node.js 18+版本。 2. Bubble - README 小组件 该仓库收集各种可以放在 GitHub Profile 和 Readme 上面的小组件。
|
5月前
|
人工智能 前端开发 JavaScript
视野修炼-技术周刊第44期
🔥强烈推荐 1. ECMAScript 2023 正式发布,有哪些新特性? 从头到尾搜索数组:findLast() 、findLastIndex() Hashbang 语法 通过副本更改数组:toReversed()、toSorted()、toSpliced()、with() Symbol 作为 WeakMap 的键 这个在之前一期有介绍过,上周正式发布,配一下babel生产上就能用起来了