前端 Utils 工具方法沉淀(基于 TypeScript) 这篇文章主要是记录个人在前端开发过程中,自己编写的 Utils 工具方法,在这里进行记录沉淀,分享给大家。语言是基于 TypeScript 的,应该会一直更新。
Bizcharts 3.0 到 4.0 升级部分问题记录 问题Chart 组件Chart 组件 forceFit 属性改为 autoFit;Chart 组件新增 pure 属性,以前 3.0 的图表默认是简易图表(默认没有坐标轴、提示信息等等),新版 4.0 默认不是简易的图表,需手动加上 pure 属性才能和之前 3.0 一致,比如 Legend 图例之前 3.0 要配置 Legend 组件才显示,现在默认显示,除非设置 pure 属性为 true;Chart 组件 padding 属性不再支持数字和 ‘auto’ 混用,比如 [‘auto’, 10,
跨页面 history state 传递 背景最近,在开发过程中遇到了一个 history state 相关的问题。当新开标签页打开新的页面时,是无法传递 history state 的。问题样例比如说,下面这个跳转链接通过新开标签页打开,虽然提供了 state 属性,但是由于 history state 不能跨标签页传递,所以在新开的页面获取不到这个 state 的,设置也是白设置。import React from 'react';import { Link } from 'react-router-dom';function T
React 重渲染防抖 React 开发过程中,通常在页面 DOM 节点特别多的情况下,会遇到 React 长时间同步渲染,导致交互和渲染阻塞,用户会感觉到页面卡顿。React 的 fiber 异步渲染就可以解决这个问题,但目前该特性仍然在实验阶段,还不能在生产环境中进行使用,所以目前只能通过一些优化手段进行优化。最近遇上了一个该类型的卡顿场景,就是一个组件更新数据时,会有多个请求,每个请求会触发组件的重渲染。而这个这个组件有个表格,表格分页大小为 200条/页,在下发数据比较多的情况,表格展示的 DOM 节点就多了。在多次重渲
熟悉Buffer 前言在引入 TypedArray 之前,JavaScript 语言没有用于读取或处理二进制数据流的机制。 Buffer 类是作为 Node.js API 的一部分引入的,以允许对 TCP 流、文件等二进制数据进行操作。本文所讲内容都基于 Node 的 v10.x 版本。Buffer 结构Buffer 是一个类数组对象,主要用于操作字节。下面我们从模块结构和对象结构的层面上来认识它。模块结...
插入换行 问题假如要实现一个类似如下图的一个定义列表,每一行都是一个名值对。HTML 代码结构如下:<dl> <dt>Name:</dt> <dd>Musk</dd> <dt>Email:</dt> <dd>user@domain.com</dd> <dt>Lo...
V8 的垃圾回收机制 前言我们知道使用 JavaScript 进行编程时,内存是有垃圾回收机制进行自动管理的,开发者不用像 C/C++ 程序员那样在编写代码时要关注内存的分配和释放。这在短时间执行的场景比如网页应用是能够基本应付的,这些场景执行时间短,随着进程退出,内存就会被释放。但随着 JavaScript 的使用场景延伸到 Node 服务端,这种长时间使用的场景就对内存管理的提出了更高的要求,内存管理的好坏,对...
百分号编码(Percent-Encoding) 百分号编码(Percent-Encoding)也被称为 URL 编码,是一种编码机制。该机制主要应用于 URI 编码中,URI 包含 URL 和 URN,所以它们也同样适用。除此之外,也用于 MIME 类型为"application/x-www-form-urlencoded"的内容。百分号编码会对 URI 中不允许出现的字符或者其他特殊情况的允许的字符进行编码,对于被编码的字符,最终会转为以百...
Node 模块引入 Node 模块引入Node 模块引入主要会经历如下3个步骤:路径分析文件定位编译执行在 Node 中,模块分为核心模块和文件模块。核心模块是 Node 提供的模块。其中部分模块在 Node 源码编译时直接生成二进制执行文件,在 Node 进程启动时被加载到内存中,因此当这部分模块引入时,会只直接跳过文件定位和编译执行,且在路径分析中优先判断,它的加载速度最快。文件模块是用户编写的...
Edge 浏览器 URLSearchParams bug 修复 背景URLSearchParmas API 为 URL 的查询字符串(query string)提供了方便操作的接口,管理端的项目大多都应用了该接口,但这个 API 因为部分浏览器没有实现(如 IE 和旧版 Edge,详见),所以引入了相应的 polyfill(github.com/WebReflection/url-search-params )进行支持,npm 包名为 url-search-...
vue-i18n 和 element-ui 国际化 vue-i18n 和 element-ui 国际化基于vue 的项目国际化可以使用 vue-i18n 插件来实现。element-ui 自身已有国际化的实现,且可以通过修改 i18n 方法兼容其他国际化插件。资料vue-i18n 文档element-ui 国际化文档:vue-i18n 构建在 vue 项目的 src 目录构建如下 i18n 目录。|___ ...
HTTP Basic 认证 HTTP Basic 认证Basic 认证是 Web 服务器于客户端之间进行认证的一种方式, 最初是在HTTP 1.0 规范(RFC 1945)中定义,后续的有关安全的信息可以在HTTP 1.1规范(RFC 2616)和HTTP认证规范(RFC 2617)中找到。Basic 认证过程当客户端请求了需要进行 Basic 认证的资源,服务器就会返回带有 401 unauthorized...
基于 HTTP 的实时 Web 通信 基于 HTTP 的实时 Web 通信Web 应用的信息交互过程通常是客户端通过浏览器发出一个请求,服务器端接收和审核完请求后进行处理并返回结果给客户端,然后客户端浏览器将信息呈现出来,这种机制对于信息变化不是特别频繁的应用是能够满足的,但是对于那些实时要求比较高的应用来说,当客户端浏览器准备呈现这些信息的时候,这些信息在服务器端可能已经过时了。所以保持客户端和服务器端的信息同步是实时 Web ...
前端响应式框架对比 前端响应式框架对比对比日期:2017-04-20 Bootstrap Semantic UI Foundation UIkit 对比版本(最新版本) 3.3 2.2 6.3 3.0 Github stars 109600 34167 25289 9040 依赖JavaScript库 JQuery JQuery jQuery
欢迎使用CSDN-markdown编辑器 欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl
MacOS原生开启移动硬盘NTFS文件系统写功能 MacOS原生开启移动硬盘NTFS文件系统写功能说明当你需要在MacOS和Windows系统之间进行文件传输时,一般会选择使用移动硬盘。而移动硬盘一般可使用的文件系统有HFS+、MS-DOS、exFAT、NTFS等等,各文件系统各有的优缺点,综合起来NTFS格式会比较好。而使用NTFS文件系统的话,MacOS一般只支持该文件系统的读功能,而无法使用写功能,但是通过配置可以使其开启写功能。
JavaScript内存泄漏 在JavaScript中,我们很少考虑内存管理。我们创建变量,使用它们,并由浏览器去负责处理底层的细节,这看起来似乎挺自然的。但是随着应用程序变得复杂,以及访客长时间在网页停留,我们可能会注意到一个浏览器需要占1G以上的内存,并且还不断的增长。这通常就是发生了内存泄漏。