2021年你需要的7个JS Array方法

2021-01-25
阅读 5 分钟
1.7k
当我们在数组上使用该 .map() 方法时,它都会在原数组基础尚返回一个新的修改版本。该 .map() 方法具有循环遍历您的数组并且修改的功能。

什么是回流与重绘 (Reflow & Repaint)

2020-12-21
阅读 2 分钟
5.3k
在讨论今天的主角之前,我们要先了解一下浏览器的渲染机制。以Google,Firefox,Safari为例,Firefox 使用Geoko——Mozilla 自主研发的渲染引擎,Safari 和Chrome 都使用 webkit。

如何优雅地在JS中使用枚举定义

2020-09-14
阅读 2 分钟
13.7k
如何优雅地在JS中使用枚举为什么使用枚举去魔法数字枚举语义化定义一体化:枚举值和枚举描述写在了一起,不分散使用方便:无需额外的过滤器如何解释去魔法数字看如下代码 {代码...} {代码...} 这种代码,后人维护根本无非理解 1,2 这种数字代表的是什么意义,导致维护困难,难于理解业务逻辑等枚举语义化我们对此加以改...

让你的git message更加规范

2020-05-21
阅读 2 分钟
1.7k
前言 规范比业务开发搬砖更为重要,没有一个好的编码规范,维护老的代码或者是编写新的代码都非常痛苦 Eslint与prettier 大大小小也做过了好几个项目,每个项目都要做eslint校验,所以我封装了一个npm包以后直接安装引入即可 {代码...} 新建.eslintrc.js {代码...} 新建.prettierrc.js {代码...} 这样省去了配置eslint规...

使用plop实现自动新建项目文件

2020-03-14
阅读 1 分钟
1.9k
一般项目开发过程中,我们都要编写(CV)一大堆重复性的代码,比如一个views/login/index.vue比如store/modules/app.js这些文件都是重复毫无意义的,找一个自动生成的工具就很有价值了

react-native 使用 F2实现折线图

2020-03-12
阅读 4 分钟
2.5k
前言 最近工作入坑了react-native,有实现折线图的需求,使用了阿里的antv/f2可视化库。 方案介绍: react-native-webview antv/f2 大概思路:使用webview加载本地html文件,通过injectJavaScript加载js脚本 步骤 新建f2chart.html,文件较大,文件地址:f2chart.html 在ios中, 将此文件与组件放在同一目录,在andirod中,手...

从零构建Sentry v10 进行异常上报

2020-02-10
阅读 7 分钟
3.6k
简介 Sentry 是一个开源的实时错误追踪系统,可以帮助开发者实时监控并修复异常问题。它主要专注于持续集成、提高效率并且提升用户体验。 下面是Sentry官网支持的产品 使用官网服务 作为大多数个人开发者和中小企业,可以直接使用Sentry官网)提供的云服务,你只需要注册一个Sentry账号,就可以快速享受到集中处理异常日...

使用useSelector useDispatch 替代connect

2019-12-12
阅读 4 分钟
14.6k
前言 随着react hooks越来越火,react-redux也紧随其后发布了7.1([链接] 首先是几个API useSelector() {代码...} 主要作用:从redux的store对象中提取数据(state)。 注意:选择器函数应该是纯函数,因为它可能在任意时间点多次执行。 {代码...} useDispatch() {代码...} 返回Redux store中对dispatch函数的引用。你可以...

自定义mixin.less并全局注入至项目中

2019-12-06
阅读 3 分钟
1.4k
有的时候写项目,需要一些通用的css样式来实现一些功能,比如居中、渐变、单行溢出省略号、多行溢出省略号等.项目使用的less预处理器,所以整理了一些常见的mixin函数

基于Vue-cli3一些常见的优化

2019-11-19
阅读 4 分钟
3.4k
1、配置某些包使用CDN 主要借助的是html-webpack-plugin这个插件以及webpack externals这个属性 修改vue.config.js {代码...} 修改index.html 使用的ejs语法,动态遍历出配置文件中的cdn地址 {代码...} 注意:externals这个对象中,key可以取important vue from 'vue'中的这个vue,value可以取外部文件export的文件名 2、...

记一次线上接口404排查过程

2019-11-08
阅读 2 分钟
5.2k
我特么一脸蒙蔽,我也想知道为什么编辑不了了啊。打开线上系统,找到编辑弹窗,按下F12,调到network,使出浑身力气按下保存按钮,心里想着,xx用户肯定是你操作不当,看我这不是好的吗。

实现一个vuex-loading插件

2019-11-08
阅读 6 分钟
3.4k
在项目中,如何管理loading是一个很头疼的方式,有的是在请求封装里去做了一个全屏loading,有的是在单页面中管理一个loading,比如如下:

实现一个简化版的Vue3数据侦测

2019-11-06
阅读 5 分钟
1.1k
距离国庆假期尤大发布vue3前瞻版本发布已经有一个月的时间,大家都知道在vue2x版本中的响应式数据更新是用的defineProperty这个API。

探究call、bind、apply知识点

2019-10-23
阅读 3 分钟
1.2k
call、bind、apply知识点 一、食用方式 apply {代码...} call {代码...} bind {代码...} 二、使用场景 基本理念:借用方法,修改this指向 获取数据类型 {代码...} 类数组借用数组的方法 {代码...} 借用数组的push方法,向arrayLike中push新数据 三、手写实现 手写call实现 {代码...} 手写apply {代码...} 手写bind {代码....

Nginx配置记录

2019-09-17
阅读 5 分钟
1.4k
Nginx配置记录 防盗链 {代码...} 根据文件类型设置过期时间 {代码...} 静态资源访问 {代码...} 日志配置 日志字段说明 字段 说明 remote_addr 和 http_x_forwarded_for 客户端 IP 地址 remote_user 客户端用户名称 request 请求的 URI 和 HTTP 协议 status 请求状态 body_bytes_sent 返回给客户端的字节数,不包括响应头...

利用Gulp实现前端打包自动上传服务器

2019-09-16
阅读 3 分钟
3.1k
由于测试环境没有使用例如:CI/CD,Jenkins等服务。所以在平时开发中,时不时都要打个包然后手动打开ftp工具将包上传到测试服务器上,所以这里想有没有什么脚本可以实现打包完成自动上传资源到测试服务器。

你不知道的this关键字

2019-09-07
阅读 5 分钟
1k
this的值:当前执行代码的环境对象,this的指向不取决于它在什么位置创建,完全取决于函数在什么地方被调用,this不能在执行期间被赋值,并且在每次函数被调用时this的值也可能会不同。

为什么我的样式不起作用?

2019-09-04
阅读 3 分钟
1.8k
关于 今天被人问了一个关于react中的样式问题,一瞬间脑袋没反应上来好像还回答错了,有点尴尬水一篇文章记录一下。 问题描述:在一个react父子组件demo中,实际效果与书写的样式不太一样。 问题复现 直接上代码描述问题: Parent.js {代码...} Parent.less {代码...} Child.js {代码...} Child.less {代码...} 大概看一...

uni-app textarea auto-height 文字出现上下滚动

2019-08-04
阅读 2 分钟
7.3k
描述问题:在uni-app中,<textarea>的auto-hetght属性会出现高度不够,文字能够上下移动的问题,具体见下图:

CentOS7 linux下yum安装redis以及使用

2019-07-10
阅读 2 分钟
7.2k
前言 继之前 window环境下安装Redis及可视化工具Redis Desktop Manager 文章后,这里记录一下Linux系统下的redis的使用 安装redis 检查是否有redis yum 源 {代码...} 下载fedora的epel仓库 {代码...} 安装redis数据库 {代码...} 安装完毕后,使用下面的命令启动redis服务 {代码...} 设置redis为开机自动启动 {代码...} ...

实现一个自己的日志处理库并发布到npm

2019-07-09
阅读 4 分钟
1.5k
不折腾的前端不是一个好的前端,最近在搭建公司内部工具以及组件库,使用npm进行管理,所以学习一下如何创建一个属于自己的JavaScript库,并发布成npm模块。

antd-design Form,Select联合使用 placeholder 不起作用问题

2019-07-01
阅读 2 分钟
8.2k
最近在用antd写表单的时候遇到个问题:Form,Select组件一起使用时,设置Select组件的placeholder属性并没有起作用。如下图:

移动端H5 input输入完成后页面底部留白问题

2019-07-01
阅读 3 分钟
4.8k
当键盘抬起时,window.scrollY会从0变到键盘的高度,所以解决办法就是当input失去焦点的时候,将window.scrollY重新设置为0

微信小程序之列表左滑删除功能

2019-07-01
阅读 5 分钟
5.5k
用过QQ的人都知道,消息列表内,左滑单个聊天可以删除、置顶的操作。对于移动端窄小的屏幕来说,这种交互可以说是非常的节省地方。故受到了众多产品狗的喜爱。

微信小程序版本自动更新

2019-07-01
阅读 2 分钟
2.1k
热启动是指: 小程序打开后,在一段时间内(目前:5分钟)再次被打开,此时会将后台的小程序切换到前台。冷启动是指: 小程序首次打开或销毁后再次被打开

dva 如何异步获取接口数据

2019-06-30
阅读 5 分钟
5.8k
State 表示 Model 的状态数据,通常表现为一个 javascript 对象(当然它可以是任何值);操作的时候每次都要当作不可变数据(immutable data)来对待,保证每次都是全新对象,没有引用关系,这样才能保证 State 的独立性,便于测试和追踪变化。

微信小程序之自定义倒计时组件

2019-06-30
阅读 7 分钟
2.6k
最近写小程序写上瘾了,业务上需要实现一个倒计时的功能,考虑到可拓展以及使用方便,便将其封装成组件(写习惯了JSX不得不吐槽小程序自定义组件的繁琐)

反向代理华为云OBS实现自定义域名访问

2019-06-30
阅读 2 分钟
4.5k
对象存储建立之后是有一个默认的域名的,但是通过默认的域名会产生流量,一般的云服务厂商都会有同地区的内网访问免流的策略,所以这里我们可以在中间搭建一个桥梁,借助我们的ECS间接访问我们的对象存储服务

使用openssl 生成证书

2019-06-30
阅读 1 分钟
2.5k
关于 最近在用egg写一个简单的CURD项目,使用的是jwt并打算使用RS256加密方式进行加密,这里记录一下如何生成RS256证书 步骤 检查是否安装openssl {代码...} 发现已经安装了openssl,这里我们将版本更新至最新版 如果没有安装的话可以直接使用yum安装 {代码...} 更新openssl {代码...} 生成公钥 {代码...} 生成私钥 {代码...

cross-env使用以及根据环境打包

2019-06-30
阅读 1 分钟
3.3k
之前的项目打包都是靠手动去改环境变量(纯属沙雕行为),随着项目越来越多,每一个项目打包都要去改这个变量的话真的是太蛋疼了,所以研究了一下webpack打包以及node env