6 Crying_cat

尚未进行身份认证

用博文来见证我的成长过程

等级
TA的排名 4w+

手写vue-router,理解原理,写啥都不是事

关于vue-router我们简单的实现他的hash模式和history模式。这两种模式可以做到单页面应用路由跳转页面不刷新,实现之前我们来分析一下实现原理。hash的原理比如 http://localhost:8080/#/about 这样的路由我们通过location.hash 可以取到 /#/about 这样的部分。不管hash如何变化我们只需要/about这部分就好了所以我们只...

2019-12-23 10:19:00

大厂vue代码很优雅

全局注册conponent全局注册component的优雅之处在于,对于一些高频率使用的组件,不需要在使用的组件里面单个引入,造成引入过多感官不优美。基于个人编码习惯,会将component组件作为全局的组件使用。// 在component组件中新建global.js// global.jsimport Vue from 'vue'// 首字母变大写function ChangeS...

2019-10-08 21:41:25

金9银10大厂19道面试题

1.new 的实现原理是什么?new 的实现原理:创建一个空对象,构造函数中的 this 指向这个空对象。这个新对象被执行 [[原型]] 连接。执行构造函数方法,属性和方法被添加到 this 引用的对象中。如果构造函数中没有返回其它对象,那么返回 this,即创建的这个的新对象,否则,返回构造函数中返回的对象。function _new() {let target = {}; // ...

2019-08-04 16:44:16

js面向对象重构fly-bird

飞翔的小鸟这个游戏想必15年风靡一时的时候 大家都玩过,游戏很有意思,但是在程序员眼中可是重要的可就不是这些了,而是游戏的代码咋写的呢,之前看到好多人分享的都是某机构培训的面向过程的一些写法,实现很简单的基本功能,闲来无事,使用面向对象的方法重构了一下这个游戏。地址:仓库地址,体验地址,觉得对理解面向对象的学习有帮助的同学,点点star哈 。有不理解的地方可以直接留言哦!...

2019-07-21 09:33:33

streamsaver.js使用心得

项目中使用streamsaver.js对视频流数据进行前端保存并下载在lib库中引入streamsaver.js+sw.js+mitm.html+ping.js+ping.html在index.html中引入streamsaver.js如果需要更改下载路径为自己的host请配置streamsaver.mitm = yourhost:yourip/lib/mitm.html+version=...

2019-04-28 22:40:24

点击单选,shift多选

// vue版本// 效果: 任意点击高亮,再次点击取消高亮 如果在点击前按住了shift按键,会将你当前点击的 到他前面 离他最近的高亮的之间的都高亮![在这里插入图片描述](https://img-blog.csdnimg.cn/20190324200728706.png)<!DOCTYPE html><html lang="en"><h...

2019-03-24 20:07:54

d3.js 力导向图

<!DOCTYPE html><html><head> <meta charset="utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <title>Page Title&am

2018-11-06 18:17:33

vue多页应用基于vue-cli2.0

实际是多个项目,多个入口在webpack打包时打包到一起目录结构* project * user * App.vue * user.index.html * user.main.js // router直接在这里配置 * goods * App.vue * goods.index.html ...

2018-10-25 11:23:19

JS正则表达式的分组

JS正则表达式的分组匹配 什么是分组通俗来说,我理解的分组就是在正则表达式中用()包起来的内容代表了一个分组,像这样的:var reg = /(\d{2})/reg.test('12'); //true这里reg中的(/d{2})就表示一个分组,匹配两位数字分组内容的的形式一个分组中可以像上面这样有一个具体的表达式,这样可以优雅地表达一个重复的字...

2018-10-11 15:23:45

90行代码将xls-to-csv格式转换

项目中的一个小需求。需要将xls格式的文件转为csv格式的文件,用来存储到数据库中,90行代码 <input type="file" id="xls" value="上传xls文件" onchange="generate()"> <div id='down'></div> <script src=&quo

2018-10-08 17:52:56

浏览器检测.js(有着一份就够了)

var client = function(){ //rendering engines var engine = { ie: 0, gecko: 0, webkit: 0, khtml: 0, opera: 0, //complete version ...

2018-09-03 20:00:32

javascript不常用的系列三(OO继承)

1.javascript推荐的组合式继承 eg:function SuperType(name) { this.name = name, this.colors = ['red','green','black']}SuperType.prototype.sayName =function() { alert(this.name)}function SubTyp...

2018-09-01 19:01:12

javascript不常用的系列二(OO设计模式)

1.Object.defineProperty(对象,属性,{writable:true,等}) 兼容性ie8+ 但ie8支持的不好,不建议在ie8中用。 可以定义对象的新属性,修改已有属性。但当enumerable或者configurable为false时是不能修改的,严格模式会报错在用它创建新属性时,不指定enumerable,configurable,writable 默认都是f...

2018-09-01 10:51:03

javascript不常用的系列一(引用类型)

引用类型(一)Object类型: 1.使用[]的方法来访问对象属性,其中属性放在[]中必须时字符串的形式。 2.这样一来相比较与使用 . 的方式访问属性有个好处,就是当属性不规则时只能使用[],如: [‘is-default’]。也可以是变量。 (二)Array类型: 1.字面量创建数组,不建议在[]中结尾多些逗号。如:[1,2,1,3,].原因是他可能创建2项或者3项的一个数组。在I...

2018-09-01 09:35:50

ubuntu 安装nodebb

介绍NodeBB是Design Create Play开发的一款使用Node.js构建的论坛系统,使用redis或mongoDB数据库,采用web socket技术实现。支持响应式布局,兼容IE8,将论坛的体验带向一个新的高度。(国外的论坛系统都相当纯粹,并不会像Discuz、phpwind那样提供各种建站所需模块)原文链接:nodebb官网 https://docs.nodebb.or...

2018-08-31 15:10:41

webpack之externals操作三部曲--正确的姿势

排除误区: 看到有人误解externals的作用,所以必须先正确认识externals的作用 1.作用首先webpack提供这个==externals==选项作用是==从打包的bundle文件中排除依赖==。换句话说就是让在项目中通过import引入的依赖在打包的时候不会打包到bundle包中去,而是通过script的方式去访问这些依赖。 2.怎么用?以jque...

2018-08-31 14:12:11

遇到的状态码及解决办法

遇到的状态码:5xx: 这种一般都是后端服务器的锅,直接去找后端工程师 504 :Gateway Timeout 网关超时, 作为代理或网关的服务器不能及时的应答。 502 : Bad Gateway 服务器作为网管或者代理时收到了无效的响应。500 : Internal Server Error 服务器遇到了意料之外的情况,不能完成客户端的请求 4xx: 这种一般都是前...

2018-06-23 09:29:08

第一个react-native app

github: https://github.com/cryingbat/react-native-app https://github.com/cryingbat/react-redux-demo

2018-06-12 10:33:02

laravel中缩小vue体积(vue优化)

https://cryingbat.github.io/2018/06/02/laravel/#more 博客原文

2018-06-04 17:15:13

react-native 打包android apk遇到的问题

1.升级到Android Sutido 3.x后,跑测之前的Model的main()方法方法时报错:Could not resolve all files for configuration ':app:lintClassPath'.Error:Gradle: A problem occurred configuring root project ‘MyApplication’....

2018-05-07 11:08:57

查看更多

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