z0nka1

梁宗凯的原创技术博客

javascript
使用git rebase合并提交记录

使用git rebase合并提交记录

本文将通过`rebase`的两个常见使用场景,介绍`rebase`如何运用到实际中,以及解决问题的具体步骤。

React
如何在一个React应用中使用Web Worker

如何在一个React应用中使用Web Worker

发现在React应用中使用Web Worker需要做些额外工作才能正常运行,一起来看看!

css
清除浮动:几种方式及优劣对比

清除浮动:几种方式及优劣对比

清除浮动很常用对吧?那你应该好好看看这篇文章!

css
什么是BFC?有什么作用?

什么是BFC?有什么作用?

本文讲解如何创建BFC,以及通过例子说明BFC的作用

Web安全
CSP(Content-Security-Policy)介绍

CSP(Content-Security-Policy)介绍

Content-Security-Policy(以下简称CSP)中文翻译为内容安全策略,用来提高网页安全性。

React
Redux解决了什么问题?

Redux解决了什么问题?

对于这个问题,可能你会说————状态管理。这个答案没错,但是...太笼统了!

React
useEffect和useLayoutEffect,有何不同

useEffect和useLayoutEffect,有何不同

在React里面,有这么两个hook:`useEffect`和`useLayoutEffect`,他们的作用很相似。但他们并不是完全相同

css
CSS中百分比宽度根据什么来计算?

CSS中百分比宽度根据什么来计算?

本文介绍在不同情况下百分比宽度如何计算

javascript
JavaScript中变量是如何存储的

JavaScript中变量是如何存储的

JavaScript中有两种数据类型:原始类型和引用类型,那他们分别是怎么存储在内存中的呢?

javascript
ES6是如何同时支持函数和块级作用域的

ES6是如何同时支持函数和块级作用域的

ES6前ES只有全局和函数作用域,ES6又新增了块级作用域,这是如何实现的呢?

css
不要再在flex布局中用width设置子项长度了

不要再在flex布局中用width设置子项长度了

在flex布局中用width或者min-width设置子项长度,其实没有必要,用好flex属性,就可以实现相同效果

html
网站换肤的更好方案

网站换肤的更好方案

通过link标签的title属性和切换disabled值,实现更好的用户体验更易于维护的网站换肤方案

html
多个a标签如何用同一标签页打开或刷新

多个a标签如何用同一标签页打开或刷新

一个页面内的多个a标签,通过配置target,可以实现多个链接共用同一标签页。

ReactNative
React Native:搭建开发环境

React Native:搭建开发环境

RN开发环境搭建采坑实录

CSS
CSS:关于em和rem的一些小实验

CSS:关于em和rem的一些小实验

今天我用em和rem做了一些小实验,总结了几个规律。

JavaScript
JavaScript:如何重构你的条件语句

JavaScript:如何重构你的条件语句

几个小技巧,让你的条件语句更优雅更易于阅读

JavaScript
JavaScript:变量提升是怎么回事

JavaScript:变量提升是怎么回事

为什么在JavaScript中变量可以先使用后定义而不报错?

JavaScript
JavaScript:如何正确找出“this”的值

JavaScript:如何正确找出“this”的值

“this”不神秘,本文会告诉你找出“this”的值其实有迹可循

Web安全
CSRF攻防

CSRF攻防

本文讲解CSRF攻击方式与防守策略

Web安全
XSS攻防

XSS攻防

本文讲解XSS攻击方式与防守策略

Github Actions初体验

Github Actions初体验

本文讲解如何利用Github Actions自动化构建和部署React应用到Github Pages

Angular
Angular:自定义表单控件

Angular:自定义表单控件

分享一个最近写的Angular表单控件,欢迎交流讨论。

Angular
Angular:Reactive Form的使用方法和自定义验证器

Angular:Reactive Form的使用方法和自定义验证器

介绍Reactive Form的使用方法,然后实现一个自定义表单验证器。

Angular
Angular:ViewProviders和Providers的区别

Angular:ViewProviders和Providers的区别

在Angular中使用依赖注入(DI)的时候,我们一般会使用providers。其实要做同样的事我们还有另外一个选择:viewProviders。

Angular
Angular:OnPush变化检测策略介绍

Angular:OnPush变化检测策略介绍

在OnPush策略下,Angular不会运行变化检测(Change Detection ),除非组件的`input`接收到了“新值”。

Angular
Angular:利用内容投射向组件输入遍历模板

Angular:利用内容投射向组件输入遍历模板

不用*ngIf,也能根据需要订制组件不同外观。

Angular
Angular:利用trackBy提升性能

Angular:利用trackBy提升性能

trackBy让列表渲染更高效。

Angular
Angular:实现一个彩虹输入框

Angular:实现一个彩虹输入框

通过实现一个彩虹输入框学习@HostBinding()和@HostListener()。

Angular
Angular:CurrencyPipe关于人民币符号¥的问题

Angular:CurrencyPipe关于人民币符号¥的问题

在不熟悉的情况下使用CurrencyPipe很容易得到预期外的结果。

Angular
Angular:如何实现自己的双向数据绑定

Angular:如何实现自己的双向数据绑定

学过Angular的同学都知道,表单组件通过[(ngModel)]实现双向数据绑定,那我们能不能实现自己的双向数据绑定呢?答案是肯定的。

Angular
Angular:aot 编译报错 ERROR in ./src/main.ts 解决方法

Angular:aot 编译报错 ERROR in ./src/main.ts 解决方法

非常常见的编译报错。

CSS
CSS水平垂直居中的几种方法

CSS水平垂直居中的几种方法

四十几年前人类已经登上了月球,但是直到今天,在CSS中还不能很好的实现水平垂直居中。

跨域及其解决方案

跨域及其解决方案

如果两个URL,协议相同,域名相同,端口号相同,那么这两个URL就属于同域。那么外域就是,协议不同,或者域名不同,或者端口号不同。注意,这三者只要其中一个不同,就不属于同域。

CSS
CSS3随内容自动伸缩的背景

CSS3随内容自动伸缩的背景

CSS3给我们带来一个非常实用的新属性:border-image,利用这个属性我们可以做出随着内容的增减自动伸缩的背景。

JavaScript
正则表达式理论与实践

正则表达式理论与实践

介绍正则表达式直接量字符、范围表示法、通配符、锚字符、修饰符和分组,以及各个方法用法。