4 w候人兮猗

尚未进行身份认证

https://www.ahwgs.cn

等级
TA的排名 5w+

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

为什么一般项目开发过程中,我们都要编写(CV)一大堆重复性的代码,比如一个views/login/index.vue比如store/modules/app.js这些文件都是重复毫无意义的,找一个自动生成的工具就很有价值了使用在github上找到了这样一个包plop,具体信息可以自行去看官方文档,下面直接给出我在项目中使用的可以看我的这个项目,里面有具体的demofast_h5_vue1....

2020-03-14 14:40:45

react-native 使用 F2实现折线图

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

2020-03-12 18:30:12

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

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

2020-02-10 05:06:42

遇到 Loading chunk {n} failed问题不要慌

前言最近在写个vue的demo,调试过程中出现个问题,vconsole中提示[vue-router] Failed to resolve async component default:Error:Loading chunk 10 failed.大致意思就是路由异步加载组件的时候报错了报错来自于webpack进行code spilt之后某些bundle文件lazy loading失败。...

2020-02-09 00:14:40

使用useSelector useDispatch 替代connect

前言随着react hooks越来越火,react-redux也紧随其后发布了7.1(https://react-redux.js.org/api/hooks#using-hooks-in-a-react-redux-app)版本首先是几个APIuseSelector()const result : any = useSelector(selector : Function, equa...

2019-12-12 19:31:25

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

前言有的时候写项目,需要一些通用的css样式来实现一些功能,比如居中、渐变、单行溢出省略号、多行溢出省略号等.项目使用的less预处理器,所以整理了一些常见的mixin函数实现新建mixin.less文件,整理了一些笔者常用的几个,其他的可以自行添加具体less如何使用可以看https://www.w3cschool.cn/less/less_installation.html.ell...

2019-12-06 00:46:12

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

前言今天周五美滋滋的划半天水,上个厕所回来客户群里来了一条信息,丢了一张截图,冲上来就问,这个怎么编辑不了了?我特么一脸蒙蔽,我也想知道为什么编辑不了了啊。打开线上系统,找到编辑弹窗,按下F12,调到network,使出浑身力气按下保存按钮,心里想着,xx用户肯定是你操作不当,看我这不是好的吗。network中血红的报错就像被一巴掌打过的脸一样,我太难了。为什么,为什么明明这个功能上线了一个...

2019-11-08 17:21:28

实现一个vuex-loading插件

前言在项目中,如何管理loading是一个很头疼的方式,有的是在请求封装里去做了一个全屏loading,有的是在单页面中管理一个loading,比如如下:data(){ return{ loading:false }},methods:{ async change(){ this.loading = true // 执...

2019-11-08 14:50:11

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

前言距离国庆假期尤大发布vue3前瞻版本发布已经有一个月的时间,大家都知道在vue2x版本中的响应式数据更新是用的defineProperty这个API。在vue2中,针对Object和Array两种数据类型采用了两种不同的处理方式。对于Object类型,通过Object.defineProperty通过getter/setter递归侦测所有对象的key,实现深度侦测对于Array类型,通...

2019-11-06 17:08:25

探究call、bind、apply知识点

call、bind、apply知识点一、食用方式applyfunction.apply(obj, [param1,params2,...])// obj:要绑定的this// 第二个参数:类数组或数组,作为function的参数传入// 立即执行callfunction.call(obj, param1, param2, ...)// obj:要绑定的this// 第...

2019-10-23 09:12:54

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

关于由于测试环境没有使用例如:CI/CD,Jenkins等服务。所以在平时开发中,时不时都要打个包然后手动打开ftp工具将包上传到测试服务器上,所以这里想有没有什么脚本可以实现打包完成自动上传资源到测试服务器。使用gulp实现首先安装gulp,gulp-ssh这两个包 npm install gulp gulp-ssh -D在项目根目录下新建gulpfile.js文件删...

2019-09-16 16:40:03

你不知道的this关键字

一、什么是thisthis的值:当前执行代码的环境对象,this的指向不取决于它在什么位置创建,完全取决于函数在什么地方被调用,this不能在执行期间被赋值,并且在每次函数被调用时this的值也可能会不同。二、this的值在全局环境(任何函数调用的外部)中,this的值都是全局对象(浏览器中是window对象,node中是global对象)在函数内部环境,this的值取决于函数被调用的方式...

2019-09-07 16:31:07

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

关于今天被人问了一个关于react中的样式问题,一瞬间脑袋没反应上来好像还回答错了,有点尴尬水一篇文章记录一下。问题描述:在一个react父子组件demo中,实际效果与书写的样式不太一样。问题复现直接上代码描述问题:Parent.jsimport React from 'react';import Child from './Child'import './Parent.l...

2019-09-04 00:44:20

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

前言帮一个可爱的小姐姐改一个uni-app构建的微信小程序时,在使用textarea组件时遇到的一点小问题。描述问题:在uni-app中,<textarea>的auto-hetght属性会出现高度不够,文字能够上下移动的问题,具体见下图:当输入的文字过多时,textarea内的文字可以上下滚动。 这不属于产品的需求,产品要的是输入框高度随着文字的变化而变化不能出现滚动条,而...

2019-08-04 03:53:14

CentOS7 linux下yum安装redis以及使用

前言继之前 window环境下安装Redis及可视化工具Redis Desktop Manager 文章后,这里记录一下Linux系统下的redis的使用安装redis检查是否有redis yum 源yum install redis下载fedora的epel仓库yum install epel-release安装redis数据库yum install redi...

2019-07-09 10:43:03

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

前言不折腾的前端不是一个好的前端,最近在搭建公司内部工具以及组件库,使用npm进行管理,所以学习一下如何创建一个属于自己的JavaScript库,并发布成npm模块。步骤创建账号点击进入npm官网 右上角进行注册[外链图片转存失败(img-56gwyZnq-1562634508793)(https://static.ahwgs.cn/blogImage/2019070820015...

2019-07-09 09:09:09

JavaScript异步编程

前言从我们一开始学习JavaScript的时候就听到过一段话:JS是单线程的,天生异步,适合IO密集型,不适合CPU密集型。但是,多数JavaScript开发者从来没有认真思考过自己程序中的异步到底是怎么出现的,以及为什么会出现,也没有探索过处理异步的其他方法。到目前为止,还有很多人坚持认为回调函数就完全够用了。但是,随着JavaScript面临的需求越来越多,它可以运行在浏览器、服务器、甚至...

2019-07-02 10:28:35

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

关于之前的项目打包都是靠手动去改环境变量(纯属沙雕行为),随着项目越来越多,每一个项目打包都要去改这个变量的话真的是太蛋疼了,所以研究了一下webpack打包以及node env主要这样做有什么好处? publicPath: process.env.APP_ENV === 'production' ? 'https://cdn.xxxx.com/brand-mall-chengd...

2019-06-17 17:47:13

使用openssl 生成证书

关于最近在用egg写一个简单的CURD项目,使用的是jwt并打算使用RS256加密方式进行加密,这里记录一下如何生成RS256证书步骤检查是否安装opensslopenssl version -a发现已经安装了openssl,这里我们将版本更新至最新版如果没有安装的话可以直接使用yum安装yum install openssl更新opensslyum upd...

2019-06-16 01:03:29

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

前言之前上了一波华为云的车,买了一台小鸡,然后又买了华为云的OBS服务(对象存储),这里主要记录的是如何反向代理配置,对象存储的内容暂不介绍为什么?对象存储建立之后是有一个默认的域名的,但是通过默认的域名会产生流量,一般的云服务厂商都会有同地区的内网访问免流的策略,所以这里我们可以在中间搭建一个桥梁,借助我们的ECS间接访问我们的对象存储服务如何做?首先,打开华为云对象存储控制...

2019-06-12 01:31:42

查看更多

勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv4
    勤写标兵Lv4
    授予每个自然周发布9篇以上(包括9篇)原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。