HK Talk

关于技术,关于生活

HTTP 和安全相关的头信息

HTTP Security Headers

前言WEB 应用越来越复杂,前端所承担的也不再仅仅是切图、写界面的任务。作为一个前端工程师,掌握必要的 WEB 安全相关的知识,也是必要的。这里收集整理了 HTTP 中和安全相关的头信息内容,了解这些头信息,在提升网站的安全性上,是有不少帮助的。安全相关的头信息Content-Security-Policy内容安全策略 CSP (Content-Security-Policy) 的主要目的是......

《你读我记》小程序

reading keeper

缘起上班通勤时间很长,在地铁上竟成了我看书最多的地方。看过很多书、小说,也忘了很多。小说 App 和 iReader 都带有阅读记录的时长,但是我经常是各个地方、各个姿势、各个类型都会看,没法统一起来。于是乎,就想有个记录的地方,也试过不少有次功能的 App,各有特色,看起来也不复杂,何不自己做个呢?搞起想了很久,忙忙碌碌,终究是懒,断断续续至今,终于做了个线上版的小程序 —— 你读我记也算......

Redux 源码解读

redux-interpretation

本篇解读基于 Redux 版本 4.0.1。完整的注释发在这个仓库 redux-interpretationRedux 的源码很短,核心就是实现下面这些 api,也是我们使用的时候会遇到的。123456789store: { dispatch, subscribe, getState, replaceReducer},bindActionCreators,comb......

Babel 7 升级实践

Babel 7 Update Practice

缘起最近在看项目的升级和优化,项目用的是 Babel 6,踩了一下升级到 Babel 7 的坑。@babel/preset-env@babel/preset-env 根据指定的执行环境提供语法装换,也提供配置 polyfill。Babel 7 已经弃用年份 preset: babel-preset-es2015, babel-preset-es2016, babel-preset-es201......

React Hooks 阅读笔记 —— Hooks 简介

官方文档关于 Hooks 的阅读笔记关于 Hooks这是个可选的功能。如果你不想用,你可以选择忽略它。100% 向后兼容。Hooks 没有破坏性的变更。现在已经可以使用了。Hooks 在 React V16.8.0 已经发布。Hooks 要解决的问题组件之间的状态逻辑复用render props 和 higer-order components 模式,也是为了解决这个问题而出现的。但是,这两......

webpack4 升级记

前言号称 “零配置”、“最高可提升98%的速度” 的 webpack4 已经出来一段时间了,而且 webpack5 也已经在路上了。再不体验一下 webpack4 就老了!目前项目使用的还是 webpack3,打包速度确实是锻炼人的耐心,这次趁着有点时间,决心优化一下项目,尝试从 webpack 升级开始。期间断断续续也遇到不少问题,在这里对大致的过程做个记录。犹记当年,也是我把 webpa......

[译]JavaScript 如何复制对象

原文: COPYING OBJECTS IN JAVASCRIPT作者: Victor Parmar这篇文章,我们将介绍在 JavaScript 中复制对象的各种方法。其中包括了浅复制和深复制。开始之前,有必要说一些基础概念:JavaScript 中的对象,是对内存中存储位置的引用。这些引用是可变的,即:引用可以被重新赋值。因此,简单的复制引用,结果只会是两个引用同时指向内存中的同一个位置:......

Awesome Font-end

前端实用备忘录

前端的发展日新月异,新的技术、新的工具如雨后春笋,不断的冒出来。作为前端,身处于大前端的繁荣时代,需要不断的学习,不断的更新自我。这是最好的时代,也是最坏的时代鱼,还是渔,这时就显得非常的重要。掌握好的信息来源,接收优质的内容,才能在浪潮中游刃有余。所以,这里记录一些个人觉得值得关注和收藏的前端领域内容:前端工具教程&&博客实用的库值得关注的大神值得订阅的资讯书单主要的目的是......

HTML5 图片上传解决方案

前言前端做图片上传时,经常会遇到图片压缩、图片预览等需求。而这个过程中,会遇到一个个的坑。下面就来看一看 HTML5 实现图片上传的整个过程。基本结构图片上传是使用 input 标签来选择图片的:1<input type="file" accept="image/*">这里可能遇到一个坑:可能会遇到响应迟钝,文件选择框过好几秒才弹出。具体的原因可以查看这里。解决的方法是将 * 通......

阿里云 GitLab 折腾笔记

想自己搭建一个 git 服务来玩一玩,正好有个阿里云,虽然配置很渣,但是也想着随便搞一搞。于是从官方教程开始,遇到一些坑,查看一些资料,解决一些问题,有了下面的笔记。选择对应的版本。我的阿里云装的是 CentOS 7,所以选择 CentOS 7的版本。通过下面的命令可以查看当前属于什么系统1lsb_release -a安装和配置一些必要的依赖Step1通过下面的命令,在系统防火墙中开启 HT......