技术爱好者周刊(第28期)

 

vue项目中使用shepherd.js实现新手引导功能 刘世豪(言未)

这篇文章主要介绍在 vue 项目中使用 shepherd.js 实现新手引导功能。先阐述实现背景和需求,对比多个插件库优缺点后选择 shepherd.js。然后详细说明了其安装、引入使用、案例演示(如修改弹窗颜色、设置显示步骤条)及属性方法汇总。


前端开发不会写动画?分享4个动画库助你打造视觉盛宴 李勇鲁(路飞)

这篇文章是作者分享前端常用的动画库。重点介绍了 gsap、lottie、React Spring 和一个轻量级动画库。gsap 性能优化且 API 人性化;lottie 开源,优势众多;React Spring 基于 React 基于物理做动画。还提及其他未用过的动画库,作者常用 gsap 和 lottie,欢迎交流。


JavaScript’s ??= Operator: Default Values Made Simple 崔鹏程

文章详细介绍了 JavaScript 中空值合并赋值运算符 ??= 的使用方法和最佳实践。关键内容包括: 基本语法和工作原理:

	// 仅当左侧操作数为 null 或 undefined 时才赋值
	let user = null;
	user ??= { name: "John" }; // user = { name: 'John' }

	let name = "Alice";
	name ??= "Anonymous"; // name 保持为 'Alice'

与其他运算符的对比:

	// 与 ||= 的区别
	let count = 0;
	count ||= 10; // count 变为 10,因为 0 是假值
	count ??= 10; // count 保持为 0,因为 0 不是 null/undefined
	// 链式使用
	const settings = {};
	settings.database ??= {};
	settings.database.host ??= "localhost";

实际应用场景:

	// 配置对象的默认值
	function initConfig(config) {
		config.timeout ??= 3000;
		config.retries ??= 3;
		config.baseURL ??= "https://api.example.com";
		return config;
	}

文章强调了该运算符在处理可选配置、默认值设置等场景下的优势,以及与传统的空值检查方法相比的简洁性。同时也提醒开发者注意与逻辑或赋值运算符(||=)的区别,避免在处理假值时产生意外行为。


前端速通Blob、File、FileReader、ArrayBuffer、Base64、URL.createObjectURL() 陆欣(谢晓峰)

Blob、File、FileReader、Base64、URL.createObjectURL()、ArrayBuffer 使用介绍


Component API Guide `张伟达

`{:.info}

腾讯 TDesign 一个组件的诞生过程,一个 API 只做一件事,避免 API 发生变化时影响到多个事件。一件事物也尽量使用一个 API 表示,以保证互斥性。


前端开发中过度封装的现象与思考 李文娟(李果然)

在实际的开发过程中,我们需要权衡封装带来的好处和潜在的问题,保持封装的适度性,避免过度封装带来负面影响。


记一次炉石传说记牌器 Crash 排查经历 车泽民

游戏中学习


GraphQL 入门 黄鹤翔

GraphQL 是一个用于 API 的查询语言,也是一个满足你数据查询的运行时。相比传统的 REST API,它提供了更加灵活和高效的数据请求方式。


最全、最详细Axios源码解读—看这一篇就足够了Axios是神马🐎? axios一个基于 Promise 来管理 - 掘金 徐堂鑫

文章对axios源码做了介绍,对axios感兴趣的可以看下。(考虑到文章发布年份是2021,可能存在部分过时内容)