自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4492)
  • 收藏
  • 关注

原创 JSBridge通信原理

JSBridge是个啥直接来重点,记住:JSBridge 是一个很简单的东西,更多的是一种形式、一种思想,为了解决 H5 和 Native 的双向通信。就像我们刚接触 ajax 时,也很懵逼。其实,他们俩个差不多,ajax 是浏览器和服务器通信的规范(暂且叫规范,像 CMD 规范一样,SeaJS 是它的一种实现方式), JSBridge 是 H5 和 Native 通信的规范。axios 是 ajax 通信的一种实现方式,WebViewJavascriptBridge(下文要...

2021-11-13 11:12:15 1042

原创 Eslint语法规范

eslint语法规范官方文档:https://eslint.org"no-alert": 0,//禁止使用alert confirm prompt"no-array-constructor": 2,//禁止使用数组构造器"no-bitwise": 0,//禁止使用按位运算符"no-caller": 1,//禁止使用arguments.caller或arguments.callee"no-catch-shadow": 2,//禁止catch子句参数与外部作用域变量同名"no-class-a

2021-11-12 09:39:00 695

原创 nvm一些问题解决方案

一、安装不建议使用brew安装,可能会有一些问题,这是nvm官网文档说明正确安装方式如下:1、安装前清理node环境sudo npm uninstall npm -gsudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*sudo rm -rf /usr/local/include/node /Users/$USER/.npmsudo rm /usr/lo.

2021-11-11 10:33:02 1816

转载 Gitlab-ci:从零开始的前端自动化部署

目录一.概念介绍 1.1 gitlab-ci && 自动化部署工具的运行机制 1.2 自动化部署给我们带来的好处二.知识预备 2.1 gitlab-ci涉及的抽象概念(Runner/PipeLine/Executor/Job ) 2.2 YML文件的基本语法规则 2.3 .gitlab-ci.yml配置的特定关键字三.CI实战 3.1 编写一个gitlab-ci的“hello world”四.坑点总结五.gitlab-ci进阶 5.1 YML

2021-11-10 14:00:22 299

转载 Vue项目打包部署总结

使用Vue做前后端分离项目时,通常前端是单独部署,用户访问的也是前端项目地址,因此前端开发人员很有必要熟悉一下项目部署的流程与各类问题的解决办法了。Vue项目打包部署本身不复杂,不过一些前端同学可能对服务器接触不多,部署过程中还是会遇到这样那样的问题。本文介绍一下使用nginx服务器代理前端项目的方法以及项目部署的相关问题,内容概览:一、准备工作——服务器和nginx使用1. 准备一台服务器我的是ubuntu系统,linux系统的操作都差不多。没有服务器怎么破?如果你只是想体验一下,可以

2021-11-10 09:14:45 365

原创 Linux基础

查看命令 解释 ls 查看目录下的文件 ls -a 查看目录文件(包含隐藏文件) ls -R a 查看目录下所有层级 ls -L a 查看a目录下详细信息 pwd 查看当前所在的目录 cat 文本内容显示到终端 head -5 a 查看a文件开头5行,默认10行 tail -3 a 查看a文件结尾3行, 默认10行 tail -f a 查看a文件,并且进行更新跟踪 wc -l a 查看a文件有多少行

2021-11-10 09:11:18 300

原创 Elasticsearch5.x版本中对Text类型进行聚合时提示illegal_argument_exception

"answer": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } }, I try to execute this aggregatio "aggs": { "answer": { "terms": { "field": "answer" ...

2021-11-10 09:10:47 224

转载 vue/react/web前端项目部署到阿里云服务器_nginx_pm2流程及部署前的准备

前端开发完成的项目,不管是使用vue、react、或者是别的web项目,最终都是要部署到外网上,让用户可以通过域名来访问。这篇文章以一个 react 移动端的项目为例,讲怎样将自己本地的项目部署到阿里云服务器上。文章比较长,第一次部署项目的大体流程如下:部署前的准备,项目打包、阿里云服务器准备;本地连接阿里云服务器;服务器安装epel仓库;服务器安装nginx;启动nginx,如果出现无法访问网站,需要检查端口号的配置;上传本地文件到服务器;服务器配置nginx代理;服务器搭建 nod

2021-11-10 09:10:17 2625 3

原创 chrome 调试移动端H5

在google浏览器,输入:chrome://inspect/#devices, 点击inspect,就会进入如下:就能控制app的网页。

2021-10-25 11:44:31 618

转载 14个最好的 JavaScript 数据可视化库

你的程序有多么依赖数据?即使应用程序不完全面向业务,你也可能需要管理面板、仪表板、性能跟踪以及用户非常喜欢的类似分析功能的数据。对于 JS 开发人员来说,可视化数据的能力与制作交互式网页一样有价值。特别是两者经常同时出现。随着 JavaScript 在数据可视化领域的不断普及,市场上甚至还会出现能够为 Web 创建漂亮图表的新库。我们选择了14个用于数据可视化的 JavaScript 库(这些库目前是最受欢迎或最有趣的)并做了一些研究,看看哪个最适合我们的项目。在这里要考虑许多因素:我想要什么样

2021-10-24 17:35:10 3613

原创 react中使用axios拦截并处理不同http状态码

在react和vue都一般都会使用一个全局的request方法进行http请求在该方法中需要对200之外的状态码进行单独处理参考ant pro项目中代码 改写的axios配置状态码设置// axiosSetting.jsimport axios from 'axios'import { message } from 'antd'import { routerRedux} from 'dva/router'import { getToken } from './auth'im

2021-10-23 14:26:10 2121

转载 react-router-dom 中文文档

HOOKSReact Router附带了一些HOOK,可让您访问路由器的状态并从组件内部执行导航useHistory useLocation useParams useRouteMatchuseHistoryuseHistory 钩子返回 history 对象,可以使用 useHistory 进行导航import { useHistory } from "react-router-dom";function HomeButton() { let history = useH

2021-10-22 14:10:11 9420

原创 一行命令更新所有 npm 依赖包

npm 包的更新速度很快,为了将项目或者全局依赖更新到最新版本。传统的做法是一个一个更新,比如更新 react 到最新版本,命令如下:# npmnpm i --save react@latest# yarnyarn add react@latest复制代码yarn 是 facebook 发明的新一代 js 包管理器,支持离线使用。这是 npm 与 yarn 的 命令对照。但是,这种做法相当耗时。有没有更简单的方法呢? 答案是使用 npm-check 或者 yarn。两者都需要全局安装。

2021-09-27 09:28:10 1856

原创 Angular 发布订阅

创建serviceimport { Subject } from 'rxjs/Subject';import { Observable } from 'rxjs/observable';export class MessageService { private subject = new Subject<any>(); send(message: any) { this.subject.next(message); } get(

2021-09-22 14:58:02 618

转载 JS版剑指offer

介绍用JavaScript刷完了剑指offer,故总结下每道题的难度、解决关键点,详细题解代码可以点链接进去细看。关于JS刷题的技巧可以看我之前的这篇:JS刷题总结。剑指offer的题目在牛客网上可以看:剑指Offer_在线编程+题解_牛客题霸_牛客网所有题目的代码已经上传到了github上:FEInterviewBox/剑指offer at master · 14glwu/FEInterviewBox · GitHub目录题目=》难易程度=》关键词(1)二位数组的查找  .

2021-09-18 09:44:37 206

转载 前端数据可视化入门

这是一篇给大家提供数据可视化开发的入门指南,介绍了可视化要解决的问题和可以直接使用的工具,我将从下面几个方面给大家介绍,同时以阿里/蚂蚁的可视化团队和资源举例说明: 什么是数据可视化? 怎样进行数据可视化? 数据可视化的场景和工具 数据可视化过程中常见的问题 什么是数据可视化数据可视化研究的是,如何将数据转化成为交互的图形或图像等,以视觉可以感受的方式表达,增强人的认知能力,达到发现、解释、分析、探索、决策和学习的目的。“数据可视化(Data V

2021-09-09 10:16:24 6568

转载 前端学习网站

作者:饥人谷编程链接:https://www.zhihu.com/question/28478379/answer/1482626570来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。一、非技术类1、V2EX:https://www.v2ex.com/程序员撕X大本营,很多业界热门撕X都是从这个论坛吵起来的,适合吃瓜2、IT 公论:https://itgonglun.com/archive/2015/#e-2918音频节目,已经停更几年了,.

2021-09-07 10:53:52 373

转载 Android知识体系总结

Android知识体系总结(全方面覆盖Android知识结构,面试&进阶 Version-3.0.0 时间:2020.05)此篇文章是初中高级工程师学习文章,知识体系较为完整。有如下特点:[1]知识结构全面[2]跟随当下技术潮流实时更新[3]可用于面试 & 学习[4]知识分为文字部分和视频部分,任性选择[5]正确的职业规划[6]方便工作过程中遗忘知识点快速查询这份知识体系大纲包括:Android部分:四大组件篇ActivityBroadcastReceiver

2021-09-01 16:38:28 1010

原创 通过 Elasticsearch 实现聚合检索

目录1 普通聚合分析 1.1 直接聚合统计 1.2 先检索, 再聚合 1.3 扩展: fielddata和keyword的聚合比较 2 嵌套聚合 2.1 先分组, 再聚合统计 2.2 先分组, 再统计, 最后排序 2.3 先分组, 组内再分组, 然后统计、排序 版权声明1 普通聚合分析1.1 直接聚合统计(1) 计算每个tag下的文档数量, 请求语法:GET book_shop/it_book/_search{ "size": 0,

2021-08-25 20:23:02 773

原创 npm 同时安装同一个包的不同版本(npm@6.9 alias)

npm 无法同时安装同一个 package 的不同版本,以往遇到这种需求的时候,我的办法是自己新建一个包,然后在新建的包里安装目标包的一个版本,然后暴露出去。这样,项目就可以依赖新建的包和另一个版本,实现同时依赖两个版本的目的。在 npm 6.9 以后,npm 可以为安装的包使用别名,可以近乎完美地解决这个问题了。elasticsearch-js 项目有一段详细说明如何使用,我把这一段翻译了一下。同时使用多个版本如果你同时使用多个版本的 Elasticsearch, 你需要使用对应的多个客户端。

2021-08-24 21:01:46 3735

原创 Elasticsearch5.x版本中对Text类型进行聚合时提示illegal_argument_exception

Having this field in my mapping"answer": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } },I try to execute this aggregation"a.

2021-08-20 17:34:49 464

原创 linux常用命令

查看命令 解释 ls 查看目录下的文件 ls -a 查看目录文件(包含隐藏文件) ls -R a 查看目录下所有层级 ls -L a 查看a目录下详细信息 pwd 查看当前所在的目录 cat 文本内容显示到终端 head -5 a 查看a文件开头5行,默认10行 tail -3 a 查看a文件结尾3行, 默认10行 tail -f a 查看a文件,并且进行更新跟踪 wc -l a 查看a文件有多少行

2021-07-20 10:07:29 482 5

转载 Nginx 最全操作总结

本文将会从:安装 -> 全局配置 -> 常用的各种配置 来书写,其中常用配置写的炒鸡详细,需要的童鞋可以直接滑倒相应的位置查看。安装 nginx下载 nginx 的压缩包文件到根目录,官网下载地址:http://nginx.org/download/nginx-x.xx.xx.tar.gzyum update #更新系统软件cd /wget nginx.org/download/nginx-1.17.2.tar.gz解压 tar.gz 压缩包文件,进去 nginx-1.17

2021-07-15 09:44:45 1264

原创 Docker使用

Docker1. 安装# 1.卸载旧版本 yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine # 2.需要的安装包 yum install -y yum-utils # 3.设置镜像仓库 yum-config-man

2021-07-14 16:28:40 650

原创 Docker常用命令

学习资料来源B站《尚硅谷Docker快速入门基础篇》1. 帮助命令:decker帮助命令 --help里包含docker的常用命令及公式,详情见第4点《4. 总结:docker --help翻译》;version、info、help命令 说明 docker version 版本获取,可以用来验证是否安装成功; docker info 对docker的信息描述; docker --help 帮助命令; 2. 镜像命令:镜像命令指获取本机对dock..

2021-07-14 14:09:01 510 6

原创 linux常用命令

查看命令 解释 ls 查看目录下的文件 ls -a 查看目录文件(包含隐藏文件) ls -R a 查看目录下所有层级 ls -L a 查看a目录下详细信息 pwd 查看当前所在的目录 cat 文本内容显示到终端 head -5 a 查看a文件开头5行,默认10行 tail -3 a 查看a文件结尾3行, 默认10行 tail -f a 查看a文件,并且进行更新跟踪 wc -l a 查看a文件有多少行

2021-06-23 10:13:29 196 1

原创 前端异常埋点系统初探

前言开发者有时会面临上线的生产环境包出现了异常???? ,在长期生产bug并修复bug的循环中总结出一下几个痛点:无法快速定位到发生错误的代码位置,因为脚手架构建时会用webapck自动帮我们压缩代码,而上线版本又通常不会保留 source map(开源贡献者除外) 无法第一时间通知开发人员异常发生 不知道用户OS与浏览器版本、请求参数(如页面ID);而对于页面逻辑是否错误问题,通常除了用户OS与浏览器版本外,需要的是报错的堆栈信息及具体报错位置。错误埋点追踪系统的出现就是为了应对上述问题的解

2021-05-24 09:07:41 235

转载 (CI & CD)Jenkins+GitHub+Vue

本篇主要介绍如何实现上传代码到github之后,自动编译部署代码的效果,采用的工具为jenkins(持续集成&持续部署工具)+github(代码托管平台)+vue(测试项目)jenkinsCI & CD 详解在此1. 什么是jenkinsjenkins是当前比较流行的一款持续集成&持续部署(CI & CD)的工具,可以实现代码上传仓库(代码更新)后自动部署到需要部署的位置(服务器等)。2.为什么本次使用rpm方式安装jenkins?jenki..

2021-05-23 17:17:12 251

原创 部署Vue项目到Linux服务器

步骤1:CentOS7.5 安装docker步骤2:CentOS7.5基于docker安装nginx步骤3:本地创建实例vue项目并上传到github上步骤4:CentOS7.5安装Git,并拉取代码步骤5:CentOS安装node环境,并编译前端项目步骤6:将编译后的静态文件放到nginx中步骤7:增加前端启动命令,简化流程...

2021-05-23 16:04:41 337

转载 Jenkins + GitLab 自动化构建部署项目

在测试环境部署这块, 经历过以下几个阶段:阶段一有一台测试服务器把项目放上面测试, 当初也没有什么相关的经验, 每次改完代码本地打包上传到服务器上, 然后一顿命令启动项目, 完成了最原始的部署。这种方式构建和部署全靠人肉, 项目简单的时候还好说, 项目一多配置一多 ( 比如微服务 ) 中间哪个环节粗心出点错那简直就是灾难。同时还要专门有人对运维相关的技术比较了解, 不然哪天我不在测试工作就完全停滞了。阶段二既然都是重复工作, 那就整理下步骤写个脚本从 SVN 拉代码Maven

2021-05-23 12:38:07 699

转载 React 开发必须知道的 34个技巧

前言React 是前端三大框架之一,在开发中也是一项技能;本文从实际开发中总结了 React 开发的一些技巧技巧,适合 React 初学或者有一定项目经验的同学序列文章:Vue 开发必须知道的 36 个技巧【近1W字】源码地址请戳, 欢迎 star效果图1 组件通讯1.1 props子组件import React from "react";import PropTypes from "prop-types";import { Button } fro..

2021-05-19 16:45:03 1564

转载 Flutter 产物分析与减包方案

flutter在混合开发场景下,Flutter 的包增量略大一直是被大家诟病的一点,并且 Google 官方明确表示了 Flutter 不会支持动态化,并且目前 Flutter SDK 官方还没有提供一套定制方案。因此想要瘦身,那么只能自己动手丰衣足食了。所谓减包,前提条件是必须知道产物内容有什么?产物里有哪些部分可以减?被减掉的部分我们要怎么加回来?因此本文将围绕“产物分析”与“减包方案”两个主题来分别论述 iOS 与 Android 两端的 Flutter 减包原理与方案。那么,先从 iOS

2021-05-07 09:34:22 1162 1

转载 Flutter 的性能分析、工程架构与细节处理

出品/ 有道智云 编辑/ Ryan 来源:有道技术团队(ID:youdaotech)一、为何 Flutter跨端技术众多,为何选择 Flutter?它能带来哪些优势,有哪些缺点?先看看具体的工程效果:https://link.zhihu.com/?target=https%3A//v.qq.com/txp/iframe/player.html%3Fvid%3Dz316221rmveweb 端效果体验:https://link.zhihu.com/?target=https%3A//.

2021-05-07 09:33:18 694

转载 node.js系列

????5 个有趣的 Node.js 库,带你走进 彩色 Node.js 世界????[Node.js 入门系列] 事件触发器 events 模块[Node.js 入门系列] 本地路径 path 模块[Node.js 入门系列] 文件操作系统 fs 模块[Node.js 入门系列] 全局对象 process 进程[Node.js 入门系列] http 模块[Node.js 入门系列] 统一资源定位符 url 模块[Node.js 入门系列] 压缩 zlib 模块[Node.j

2021-04-27 10:41:25 211

转载 webpack打包原理

什么是 webpack ?本质上,webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle。webpack 就像一条生产线,要经过一系列处理流程后才能将源文件转换成输出结果。 这条生产线上的每个处理流程的职责都是单一的,多个流程之间有存在依赖关系,只有完成当前处理

2021-04-27 10:39:55 424

原创 23个linux常用命令

1. ls 命令 : 显示目录内容列表Linux ls 命令用于显示指定工作目录下之内容(列出目前工作目录所含之文件及子目录)。ls [-alrtAFR] [name...]常用 options-a 显示所有文件及目录 (ls 内定将文件名或目录名称开头为"."的视为隐藏档,不会列出) -A 同 -a ,但不列出 "." (目前目录) 及 ".." (父目录) -R 若目录下有文件,则以下之文件亦皆依序列出2. rm 命令 : 删除文件/目录Linux rm 命令用于删除一个

2021-04-27 10:32:01 232

转载 这里有一份Node.js入门指南和实践

前言什么是 Node.js 呢 ?JS 是脚本语言,脚本语言都需要一个解析器才能运行。对于写在 HTML 页面里的 JS,浏览器充当了解析器的角色。而对于需要独立运行的 JS,NodeJS 就是一个解析器。解析器需要运行引擎才能对 JavaScript 进行解析,Node.js 采用了 V8 引擎,Google 开源的 JavaScript 引擎。所以,Node.js 就是一个基于 Chrome V8 引擎的 JavaScript 运行环境。Node.js 事件驱动机制 + 异步 IO

2021-04-27 10:10:39 388

转载 十个PM2中冷门但实用的功能

PM2发布于2013年,是使用JavaScript开发,主要用于Node.js业务持久化的进程管理器。相对于Systemd、Supervisord等通用进程管理器,PM2对JavaScript的业务更为友好,且使用更为简单,有着丰富的可扩展性,对非JavaScript业务的管理同样出色。可惜的是许多PM2用户对PM2的了解并不多,大部分用户都只掌握了基础的进程管理,其实PM2的能力绝不止于此,充分使用PM2能够让业务开发和维护的效率大大提升。本文就来列举这样十个PM2中冷门但实用的功能,希望能够帮助读者对P

2021-04-27 09:19:51 929

原创 koa如何连接MongoDB

这个方法,node,express,koa连接MongoDB都是一样的方法,我们利用mongoose模块来连接注意我的版本这是我的目录这个方法,node,express,koa连接MongoDB都是一样的方法,我们利用mongoose模块来连接我的安装的依赖版本:"dependencies": { "koa": "^2.6.2", "mongoose": "^5.3.12", }`1.连接MongoDB// db/db.jsconst mo...

2021-04-26 17:14:57 650

转载 Vue搭建可视化界面

最近更新:收到很多私信,大家都想了解构建的源码和过程,因为之前涉及到很多公司内部业务和隐私,所以不方便放出来。应大家强烈要求,这里我将重写一个活动页构建工具供大家参考,持续更新,欢迎start和关注:muwoo/rose​github.com线上预览地址:Rose​muwoo.github.io前言如果你经常接触一些公司的活动页,可能会经常头疼以下问题:这些项目周期短,需求频繁,迭代快,技术要求不高,成长空间也小。但是我们还是马不停蹄的赶着产品提来的一个个需求,随着公司规模的增.

2021-04-26 15:58:58 7895 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除