React基础

React基础

基于create-react-app进行React学习,React个人感觉与Vue最大的区别在于高复用性,每一个组件都只做一件事,组件的业务逻辑可以放在父级去做(状态提升)。这与Vue2.0相差甚大,不过随着Vue3.0的到来,Vue也完全可以采取这种方式。弊端是React采用jsx、tsx进行DOM书写,需要额外学习一下语法糖,不过都是小问题🙁

阅读更多
Math basic api

Math basic api

Math 是一个内置对象,它拥有一些数学常数属性和数学函数方法。Math 不是一个函数对象。Math 用于 Number 类型。它不支持 BigInt

与其他全局对象不同的是,Math 不是一个构造器。Math 的所有属性与方法都是静态的。引用圆周率的写法是 Math.PI,调用正余弦函数的写法是 Math.sin(x),x 是要传入的参数。Math 的常量是使用 JavaScript 中的全精度浮点数来定义的。

阅读更多
什么是Source Map

什么是Source Map

在日常开发过程中,我们编写的源代码通过多重处理(编译,封装,压缩…),最后形成的产物代码,在浏览器中调试时,我们会发现代码变得面目全非,根本没办法调试。
因此,我们需要一种将产物代码回溯到源代码的功能,Source Map就是实现这一功能的工具。
Source Map的基本原理是,在编译过程中,在生成产物代码的同时也生成基于源代码的一份映射关系表。有了这张映射关系表,我们就可以通过 chrome 控制台中的“Enable JavaScript source map”来实现调试时的显示与定位源代码的功能。
生成Source Map的方式有很多种,他们的构建速度、质量(反解代码与源代码的接近程度以及调试时行号等辅助信息的对应情况)、访问方式(在产物文件中或单独生成 source map)、文件大小都各不相同。在开发和生成环境下我们对 source map 的期望也有所不同。

  • 在开发环境中,我们更关心构建速度、质量,以便于提升开发效率,而不关心文件大小与访问方式
  • 在生产环境中,我们更关注的是,是否需要开启 source map,生成文件的大小和访问方式是否对页面性能造成影响,其次才是质量和构建速度。
阅读更多
AbortController👀
什么是热更新?

什么是热更新?

看到浏览器热更新,我们很容易就想到的是webpackwebpack-dev-server
问题:热更新是保存后自动编译(Auto Compile)吗?还是自动刷新浏览器(Live Reload)?还是指HMR(Hot Module Replacement,模块热替换)?
先看一下什么是浏览器的热更新。浏览器的热更新,指的是我们在本地开发的同时打开浏览器进行预览,当代码发生变化时,浏览器自动更新页面的技术。这里的自动更新,表现上又分为自动刷新整个页面,以及页面整体无刷新而只更新页面的部分内容。

阅读更多
SameSite cookies报错

SameSite cookies报错

error message:Because a cookie’s SameSite attribute was not set or is invalid, it defaults to SameSite=Lax, which prevents the cookie from being set in a cross-site context. This behavior protects user data from accidentally leaking to third parties and cross-site request forgery.

Resolve this issue by updating the attributes of the cookie:
Specify SameSite=None and Secure if the cookie is intended to be set in cross-site contexts. Note that only cookies sent over HTTPS may use the Secure attribute.
Specify SameSite=Strict or SameSite=Lax if the cookie should not be set by cross-site requests

阅读更多
commitizen规范commit

commitizen规范commit

在多人协作的项目中,如果Git提交说明过于混乱,是不利于代码review的。如果Git提交说明足够精准、详细,不仅有利于代码的review也有利于后期排查问题,甚至我们可以根据commit信息生成响应日志。
本文主要介绍通过cz工具,以及附和Angular规范的提交说明来规范commit信息。也可以查看vuejs,他的提交说明就是根据Angular规范来的。
本文示例: cz-example

阅读更多
Icarus指南

Icarus指南

Icarus的默认主题配置文件为_config.icarus.yml
此文件定义了站点全局的布局与样式设置,同时也控制了例如插件与挂件等外部功能的配置。
本文详细介绍了主题的一般配置,并且解释了Icarus使用哪些配置文件和它是如何生成并验证这些配置。

阅读更多
Git操作指南

Git操作指南

整理的一些Git常用命令,以及进阶命令git rebase,从这里你可以学到基础的Git配置命令、分支管理、fetch指令、git撤销、状态查询、文档查询、文件暂存、差异比较、基本操作、git进阶之rebase

阅读更多
JSON.stringify()

JSON.stringify()

JSON.stringify() 方法将一个 JavaScript 对象或值转换为 JSON 字符串,如果指定了一个 replacer 函数,则可以选择性地替换值,或者指定的 replacer 是数组,则可选择性地仅包含数组指定的属性。

阅读更多
Your browser is out-of-date!

Update your browser to view this website correctly.&npsb;Update my browser now

×