自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 使用webpack4一步步搭建react项目(三)

第二章的配置基本已能达到正常的开发需求了。但是还有很多地方可以进行改善。第三章 改善项目使用最新的ES语法React开发中难免要用到ES最新语法。例如常用的Decorators还在Stage 2阶段,Dynamic import还在Stage 3阶段。这些新的语法并没被@babel/preset-env涵盖。因此我们需要额外配置对应的babel插件。安装babel插件:支持装饰器 @b...

2019-04-06 20:57:05 431

原创 使用webpack4一步步搭建react项目(二)

前面已经实现了一个简单webpack配置,接下来需要在前面的基础上对webpack.config.js进行拆分。第二章 拆分webpack配置项目开发时,我们需要用webpack-dev-server启动开发服务器,当我们修改文件时,它能自动重新打包项目并刷新页面。项目打包上线时,我们希望webpack能进行更多的处理来优化打包后的代码。针对不同的需求,我们需要将配置文件拆分为webpac...

2019-04-06 20:56:24 604

原创 使用webpack4一步步搭建react项目(一)

平时都是用命令行工具一键生成项目,没有机会使用webpack从头到尾搭建项目。经过几天的学习,决定用webpack搭建一个React项目,并将搭建过程记录下来,与大家一起交流分享。菜鸡一枚,如果那里有错误,希望大家帮忙指出。本篇文章会被分成三章,每一章都有一个主题。第一章 搭建项目雏形项目结构代码项目代码 Github 仓库初始化项目mkdir diy-webpack-for-r...

2019-04-06 20:55:31 898

原创 express 中的错误处理

node中错误处理node中抛出一个uncaughtException应该要让node进程直接结束。而不是通过process.on('uncaughtException',handler)进行统一处理。如果真要全局捕获错误,可以像下面这样处理:process .on('unhandledRejection', (reason, p) => { console.error(r...

2019-03-30 21:19:50 7054

原创 linux文件与文件夹的权限解读

linux文件与文件夹的权限解读Linux下文件与文件夹的各个权限对应的意义是不同的,这篇文章主要写出文件与文件夹的可读、可写、可执行权限对应的功能。文件1.可读可以读取文件内的文本,二进制码等文件的内容,前提是能进入该文件所在的文件夹。2.可写可以添加,删除,修改文件的内容,前提是能进入该文件所在的文件夹。3.可执行可以执行该文件,前提是能进入该文件所在的文件夹。文件夹1.可...

2019-02-11 13:42:11 300

原创 Linux常用命令

Linux常用命令以下是阅读鸟哥的Linux私房菜第四版做的笔记。一、Linux入门1. man命令虽然绝大多数数的命令带有–help选项,但是想查看某命令的详细信息还是man比较详细。man man #查看man命令的manualman 1 man #查看id为1的man命令man -f man #查看命令名中包含man字样的所有命令man -k man #查看命令简介中包含ma...

2019-02-11 13:41:38 184

原创 shell

shell什么是shell为了避免非专业人士直接操作系统导致系统受破坏,因此需要有个shell来操作。每个命令都是一个应用,shell是一个能调用各个应用接口的程序。shell的命令可以用type命令来查看那些命令是shell内置type cd #cd是shell内置的如果命令过长,可以用‘\’将回车转义(escape),这样就可以在下一行继续输入命令。有时候需要删除和编辑写好的命...

2019-02-11 13:40:12 154

原创 generator内部有异常时的执行机制

generator内部有异常时的执行机制执行generator函数会返回一个iterator,iterator调用next方法会返回一个值。如果next执行过程中出现异常是否还会返回值呢?如果返回值的话,会返回那个值呢?情况一:捕获的异常main generator内出现了一个被捕获的异常。function *main(){ yield 1; try{ undefinedVa...

2019-02-11 13:35:30 201

原创 generator yield-delegation

generator yield-delegation在generator函数内部,通过yield*语句,可以将yield委托给其他任何实现iterable的对象。委托给generator函数生成的iterable对象调用generator函数会返回一个实现iterable的对象(该对象同时也是一个iterator)。通过yield* otherGenerator()可以将generator...

2019-02-11 13:34:25 118

原创 自己实现一个async函数

自己实现一个async函数async函数能将promise链式调用的写法改成同步的写法。让代码变得更简洁易懂。es6中的async是语法糖,我们自己可以实现类似async函数的功能。下面是myAsync的代码:/** * * @param {Function} gen 一个generator函数 */function myAsync(gen) { var args = [].sl...

2019-02-11 13:32:57 995

原创 vm.$slots和vm.$scopedSlots在渲染函数内的使用

探索 vm.$slots 和 vm.$scopedSlots以下例子是在[email protected]中运行的。vm.$slots内包含当前组件实例中所有插槽(包括默认插槽、具名插槽、作用域插槽)。<!-- App.vue --><template> <div id="ap

2019-02-08 20:15:33 3992

原创 探索 Object.defineProperty

探索 Object.definePropertyObject.defineProperty 可以给对象定义属性,以及属性的描述。基本使用方法var person = { name: "Allen" };// 定义属性 'gender'// 可配置(configurable)// 可枚举(enumerable)// 可写(writable)Object.defineProperty...

2019-02-08 03:33:59 80

原创 javascript用createRange拷贝Range片段到粘贴板

最近项目需要做一个编辑器,其中有个按钮点击可以将编辑好的文章一键复制到粘贴板,产品的要求是复制好的文章能连带图片和样式一起粘贴到word中。本来打算用clipboard.js来做的,但发现它只能复制文本。在谷歌之后,有了新的方案:利用Range对象选择需要复制的范围,然后将选好的范围复制下来。我用layui的define方法封装了一个对象layui.define(['jquery','layer'...

2018-06-16 10:57:15 2228

原创 解决linux单引号需要按两下才出来的问题

我的系统是CentOS 7,我的输入法切换快捷方式是Ctrl+Shift。本来是可以直接打出双引号、单引号和反向单引号的,但是在我切换输入法后需要敲两下才会出现,而且单引号和双引号和原来还长的不一样。总感觉是我切输入法的时候多按了什么,才出现这样的问题的。经过一段时间的探索,通过以下方法解决了该问题Ctrl+Shift+'没错,就是切输入法的快捷键加上引号那个按钮。...

2018-05-11 14:38:24 1444

原创 解决clipboard.js在vue的弹窗组件中无效

    最近有个需求,用户点击按钮会弹出一个弹窗,弹窗内会有一个复制按钮,点击该复制按钮会将url复制到剪贴板。    项目用的是用vue + quasar UI。我用quasar的Modal封装了一个弹窗组件,并在弹窗组件的mounted方法实例化一个clipboard实例。代码如下:import ClipboardJS from 'clipboard'...mounted(){ le...

2018-04-27 14:34:29 5629

原创 使用axios和webpack-dev-server时无法从后台获取cookie

    闲着没事打算把老的后台系统用vue撸一遍。用的是quasar框架,ajax用axios,还配置了webpack-dev-server的proxy作为代理服务器。    刚上手做了个登录页面就出问题了。老的后台是使用session配合cookie做登录验证的,但我用axios发送的登录请求的响应头没有set-cookie。用chrome的开发者工具查看了下请求,发现post请求的参数是req...

2018-04-17 11:06:48 2967

原创 CentOS上部署node时,外网无法访问。

    最近在CentOS上部署node时,碰到了一个问题。明明用forever启动了node服务,并且配置好了nginx,但在外网始终无法访问到node服务。    使用命令netstat -ntpl查看端口时发现node开启的端口是tcp6的,这可能就是外网无法访问的原因了。查了下谷歌,还真是这么一回事。解决方法就是app.listen()方法显式填写ipv4的地址(我用的框架是koa,exp...

2018-04-07 16:47:07 4303 1

原创 解决CentOS中使用git碰到的问题:error: cannot open .git/FETCH_HEAD: Permission denied

  最近我在CentOS中部署node服务器时,碰到了一个问题,发现我从github push或pull项目时都会报错。明明已经按姿势生成了SSH keys,并把public key复制到了github上了,使用命令git pull origin始终都会报以下错误。error: cannot open .git/FETCH_HEAD: Permission denied  一开始以为加个sudo就...

2018-03-28 21:03:13 12725 1

原创 postMessage的使用

postMessage是H5的API,用来解决跨页面通信的。postMessage的使用分为发送方和接收方。发送方的代码用法如下:otherWindow.postMessage(message, targetOrigin, [transfer]);otherWindow是接收方的window对象。可以通过以下几种方法获得,例如window.open()方法返回的值就是打开页面的window对象,或...

2018-02-28 21:08:07 8345

原创 js嵌套for循环-标签的使用

javascript嵌套for循环内层如何break或continue外层的for循环呢?很简单,可以给外层for循环加上标签,break或continue的时候加上对应的标签名就可以了:outer: // 给外层的for循环加上标签,取名为outerfor(var i=0;i<4;i++){ inner: for(var j=0;j<4;j++){ if(j>...

2018-02-25 01:38:25 4621

原创 javascript自动分号补齐带来的坑

javascript的自动分号补齐 ( auto semicolon insertion,简称ASI ),可以让我们敲代码的时候不用写分号,但是如果使用不妥有时候也会带来不必要的麻烦。例如当下一行开头是 “(“、“ [“、“ /” 这三个字符之一的时候:a = b(function () { ... }())a=b的后面并不会自动补上分号,而是会被解析成a = b(function () {.....

2018-02-25 00:41:00 1271

空空如也

空空如也

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

TA关注的人

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