自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 记GitHub双重验证后上传代码出现的问题

一、双重验证软件Authy Desktop. 通过绑定GitHub账户名发送6位验证码。每次登录GitHub都需要验证。二、创建新的代码仓库提交时遇到问题 输入:git push -u origin main ,需要输入用户名、密码,怎么也没法推送到远端repo,总是提示身份认证错误:“fatal: Authentication failed for ...” 原因:因为开始了双因子身份认证,那么在push代码时,密码不应该再是GitHub登录时的密码,需要提供的是一...

2021-05-31 17:22:47 795

原创 记react项目搭建流程及问题

目录一、全局安装二、创建react应用三、遇到报错 1、 eslint版本问题 2、构建项目时,在node_modules中创建文件权限问题 3、安装依赖报错一、全局安装npm install -g create-react-app二、创建react应用create-react-app react-projectcd react-project// 安装依赖sudo cnpm install//启动npm sta...

2021-04-09 18:10:28 154

原创 vue 移动端拨打电话

方法:window.location.href = 'tel://' + 电话号码;——对安卓支持;iOS不支持iOS需要多加一个a标签;写法:<div class="contact-line contact-tel"> <div>手机号</div> <div class="tel">{{tel}}</div> <div @click="callTel()">拨打</div> &

2020-07-24 16:28:57 1313

原创 vue 点击实现复制功能

使用插件:clipboard.js地址:https://clipboardjs.com/npm安装:npm install clipboard --save使用:<div class="contact-line"> <div>微信号</div> <div class="tel">{{wechat}}</div> <div class="wechat-copy" :data-clipboard-tex.

2020-07-24 15:49:28 588

原创 travis CI + coveralls

travis CI travis CI 是一个托管的分布式持续集成服务,用来构建并测试托管在Github上的软件项目,其中 CI 就是持续集成(continuous integration)的缩写。持续集成是在小代码变更中频繁合并的实践,而不是在开发周期结束时在大变更中合并。为什么要使用 travis ? 它可以让你明白自己的项目在一个“空白环境”中,是否能正确运行;也可以让你知道,用不同的 Node.js 版本运行的话,有没有兼容性问题。 travi...

2020-06-12 15:13:52 426

原创 scroll-view 滚动到顶部下拉刷新卡住

描述:微信小程序用户消息页下拉刷新加载历史记录,偶尔出现卡住现象原因:Bindscrolltoupper事件不能百分之百每次都触发可能存在的原因可能有:scroll-view没有设置高度,单位不能是%,必须是px; 设置scroll-y属性 当快速滚动屏幕到顶时不是每次scrollTop值都为0; <scroll-view>的下级子元素是否有两个或多个同级元素——用一...

2020-05-06 19:42:50 1154

原创 webpack打包编译

官网:https://www.webpackjs.com/concepts/安装:npm install webpack -g // 全局安装 npm install webpack –save-dev // 局部安装注:最好在全局安装后根据项目package.json中webpack的版本再局部安装对应的webapck四个核心概念:入口(entry)...

2020-04-24 21:49:43 389

原创 gulp-雪碧图、裁剪

安装gulp-gm(用于裁剪):npm install --save-dev gulp-gmgulp-gm与GraphicsMagick配合得最好。但是,它也支持ImageMagick,但是需要设置ImageMagick:true选项。注意:确保GraphicsMagick或ImageMagick已安装在系统上,并在路径中正确设置。Mac安装GraphicsMagick和Imag...

2020-03-14 18:24:26 344

原创 vue中created、mounted、computed、methods区别与执行顺序

computed是在DOM执行完成后立马执行(如:赋值) created执行时挂载阶段还没有开始,模版还没有渲染成html,所以无法获取元素。created钩子函数主要用来初始化数据。 mounted钩子函数一般用来向后端发起请求,拿到数据后做一些业务处理。该函数在模版渲染完成后才被调用。DOM操作一般是在mounted钩子函数中进行。 methods方法有一定的触发条件,如click等。...

2019-08-19 11:12:38 17953 1

原创 axios相关

传参方式:get请求方式将需要入参的数据作为params属性的值,最后整体作为参数。传递参数必须用{params:{'name':'111', 'age': '12'}}形式,加parmas。axios.get(url, {params: params}) .then((data) => { console.log(data) }) .c...

2019-08-12 18:16:10 289

原创 图片水平或垂直滚动

在vue项目中引用外部插件VueImgSlider.vue:import VueImgSlider from '../components/VueImgSlider.vue'export default { name: 'website-about', components: { 'vue-img-slider': VueImgSlider }, ...

2019-08-01 21:06:29 596 1

原创 Mac构建vue项目及问题存在问题

1、检测npm、node是否安装成功: npm -v node -v2、升级npm $ sudo npm install npm -g3、安装淘宝镜像 npm install -g cnpm --registry=https://registry.npm.taobao.org4、安装webpack ...

2019-07-29 20:15:54 380

原创 贴图与UV映射

贴图:是将图像应用到对象的一个或多个面,来为3D对象添加细节的一种方法。随着3D模型的面的增长,为每个面创建贴图是不现实的——解决方法:UV映射UV映射的本质是:把一张平面图像的不同区域(不同位置)映射到3D模型的不同面上。UV映射是2D图像投影到3D模型的表面以进行纹理映射的3D建模过程(也即把位图贴到3D图形的过程或者方法)。这里的U 、V表示2D纹理的轴(即:纹理贴图坐标)...

2019-07-10 20:03:17 5909 1

翻译 安装本地服务器的方式

1、适用于Unix/Linux/Mac系统的基于python的web服务器(1)进入代码所在的目录:cd /..(2)在指定目录运行:> python -m SimpleHTTPServer 默认启动本地8000端口2、基于NPM的web服务器 如果已经使用node.js,则肯定已经安装了NPM。使用NPM有两种方式可以搭建本地web服务器:...

2019-07-10 20:01:07 488

原创 加载obj三维模型

纹理——Texture. 泛指物体表面的纹路。表现为可视的图片,用于展示外观 贴图——Map. 贴图的具体表现形式是纹理。当纹理附着在具体的物体表面时,则称为贴图。Map的另一层含义——映射,功能是把纹理Texture的UV坐标映射到3D物体表面 材质——Material. 在渲染程式中,它是表面可是属性的结合,这些可是属性是指表面的色彩、纹理、光滑度、透明度、反射率、折射率、发光度等。材质表...

2019-07-09 20:01:24 1710

原创 Echarts——sunburt 旭日图

将非结构化数据转换为结构化数据:sunburst是echartsv4.0新增的功能。&lt;div id="demo" style="width: 100%;height: 800px;"&gt;&lt;/div&gt;var myChart = echarts.init(document.getElementById('demo')); var data = [{ ...

2018-12-27 21:46:18 1976

原创 D3——力导向图

&lt;script type="text/javascript" src="http://d3js.org/d3.v5.min.js"&gt;&lt;/script&gt;&lt;script&gt; var width = 800; var height = 800; var svg = d3.select("body") .append("s

2018-12-21 17:25:38 8102 5

原创 Vue实例方法

一、实例属性 1、组件树访问(1)$parent——用来访问当前组件实例的父实例。(2)$root——用来访问当前组件树的根实例,如果当前组件没有父实例,$root表示当前实例本身。(3)$children——用来访问当前组件实例的直接子组件实例。(4)$refs——用来访问使用了v-ref指令的子组件。2、DOM访问(1)$el——用来访问挂载当前组件实例的D...

2018-12-11 11:49:11 521

原创 过渡

当插入或删除包含在 transition 组件中的元素时,Vue 将会做以下处理:(1)自动嗅探目标元素是否应用了 CSS 过渡或动画,如果是,在恰当的时机添加/删除 CSS 类名。(2)如果过渡组件提供了 JavaScript 钩子函数,这些钩子函数将在恰当的时机被调用.(3)如果没有找到 JavaScript 钩子并且也没有检测到 CSS 过渡/动画,DOM 操作 (插入/删除) ...

2018-12-10 23:00:32 214

原创 Class与Style绑定

在v-bind用于class和style时,Vue.js专门增强了它。表达式的结果类型除了字符串以外,还可以是对象或数组。1、绑定HTML Class(1)对象语法如:&lt;div id="id1" class="static" v-bind:class="{'didi-orange':isRipe,'didi-green':isNotRipe}"&gt;&lt;/div&gt...

2018-12-10 16:05:41 281

原创 过滤器

1、过滤器过滤器——本质上都是函数。作用在于用户输入数据后,它能够进行处理,并返回一个数据结果。使用管道符(|)进行连接。如:{{'abc' | uppercase}}  //'abc' =&gt; 'ABC'Vue.js支持在任何出现表达式的地方添加过滤器。如:在{{}}的表达式 在绑定指令的表达式后调用如:&lt;span v-text="message" | upperc...

2018-12-10 11:50:38 180

原创 计算属性

1、计算属性    计算属性——当其依赖属性的值发生变化时,这个属性的值会自动更新,与其相关的DOM部分也会同步自动更新。&lt;div id="id1"&gt;    &lt;input type="text" v-model="didi"&gt;    &lt;input type="text" v-model="family"&gt;   

2018-12-09 20:39:44 1277

原创 组件基础

1、基本示例&lt;div id="id1"&gt;    &lt;button-counter&gt;&lt;/button-counter&gt;&lt;/div&gt;//定义一个名为button-counter的新组件    Vue.component('button-counter',{        data:function () {            re...

2018-12-07 18:21:34 157

原创 表单输入绑定

       可以用 v-model 指令在表单 &lt;input&gt;、&lt;textarea&gt; 及 &lt;select&gt; 元素上创建双向数据绑定。它会根据控件类型自动选取正确的方法来更新元素。尽管有些神奇,但 v-model 本质上不过是语法糖。它负责监听用户的输入事件以更新数据,并对一些极端场景进行一些特殊处理。1、文本&lt;div id="id1"&gt;...

2018-12-07 15:52:36 194

原创 事件处理

1、事件修饰符 .stop .prevent .capture .self .once .passive 注:修饰符可以串联,使用修饰符时顺序很重要;相应的代码会以同样的顺序产生如:&lt;!-- 阻止单击事件继续传播 --&gt;&lt;a v-on:click.stop="doThis"&gt;&lt;/a&gt;&lt;!-...

2018-12-07 15:40:34 142

原创 计算属性和侦听器

1、计算属性缓存 VS 方法将一个函数定义为计算属性和方法得到的结果是相同的。但不同的是计算属性是基于它们的依赖进行缓存的,只是在相关依赖发生改变时才会重新求值。//方法methods: {  reversedMessage: function () {    return this.message.split('').reverse().join('')  }}//计算属性...

2018-12-07 15:33:11 128

原创 vue——内部指令

指令是特殊的带有前缀v-的特性。指令的值限定为绑定表达式,指令的职责就是当其表达式的值改变时把某些特殊的行为应用到DOM上。v-ifv-if指令可以完全根据表达式的值在DOM中生成或移除一个元素。false——移除;true——生成一个元素如果想切换多个元素,可以把&lt;template&gt;元素当作包装元素切换v-if模块时,有局部编译/卸载过程。v-if是惰性的—...

2018-11-13 16:09:45 204

转载 TCP三次握手与四次挥手

TCP三次握手:TCP服务器进程先创建传输控制块TCB,准备接受客户进程的连接请求,服务器进入监听状态LISTEN; TCP客户进程创建传输控制块TCB—&gt;向服务器发送连接请求报文,这时报文首部中的同步位SYN=1,初始序列号为seq=x,此时TCP客户端进程进入了SYN-SENT(同步已发送状态)。TCP规定,SYN报文段(SYN=1的报文段)不能携带数据,但需要消耗掉一个序号。 ...

2018-08-29 12:04:12 141

转载 CSS可继承属性与不可继承属性

一、无继承性的属性1、display:规定元素应该生成的框的类型2、文本属性:vertical-align:垂直文本对齐text-decoration:规定添加到文本的装饰text-shadow:文本阴影效果white-space:空白符的处理unicode-bidi:设置文本的方向3、盒子模型的属性:width、height、margin 、margin-top、...

2018-08-28 21:44:35 327

原创 链表反转

方法1:将单链表储存为数组,然后按照数组的索引逆序进行反转——浪费空间方法2:使用3个指针遍历单链表,逐个链接点进行反转。     在调整节点q的指针时,需要知道q节点本身,还需要知道它的前一个节点p,因为需要把节点q的next指向节点p;还需要知道q的下一个节点r,以防止链表断开。因此,需要定义3个指针,分别指向当前遍历到的节点、它的前一个节点以及后一个节点。     反转后的表...

2018-08-28 12:12:12 165

转载 前端编码问题

编码惯例:“万国码”,全球所有语言做成一个码表,即unicode码 表,这种编码的坏处是码表太庞大,好处是同时使用多种语言。所谓的utf-7、utf-8之类就是unicode的某种相对高效的实现,不管某个字 符用utf编码为几个字节,他们都属于同一个unicode超集。我们常遇到的中文编码是gb2312、gbk、gb18030和utf-8,不严谨的 讲,前三者大致相互兼容,但都和utf-8不兼容。...

2018-08-27 10:03:47 481

转载 判断两个对象相等—网易一面

思路:首先明白,JS的对象类型很多,针对每个类型判断相等的方法都不同。对象类型:string、Boolean、number、array、date、构造函数......我们认为:NaN 和 NaN 是相等 [1] 和 [1] 是相等 {value: 1} 和 {value: 1} 是相等不仅仅是这些长得一样的,还有1 和 new Number(1) 是相等 'Curly' 和...

2018-08-25 13:08:54 172

原创 排序算法

1、冒泡排序冒泡排序思想:每一次对比相邻两个数据的大小,小的排在前面,如果前面的数据比后面的大就交换这两个数的位置 要实现上述规则需要用到两层for循环,外层从第一个数到倒数第二个数,内层从外层的后面一个数到最后一个数。特点:排序算法的基础。简单实用易于理解,缺点是比较次数多,效率较低。存在问题:数据的顺序排好之后,冒泡算法仍然会继续进行下一轮的比较,直到arr.length-1次...

2018-08-21 17:51:02 116

原创 重绘与回流

重绘:当渲染树中的元素外观(如:颜色)发生改变,不影响布局时,产生重绘回流:当渲染树中的元素的布局(如:尺寸、位置、隐藏/状态)发生改变时,产生重绘(回流)注意:JS获取Layout属性值(如:offsetLeft、scrollTop、getComputedStyle等)也会引起回流。因为浏览器需要通过回流计算最新值。回流必将引起重绘,而重绘不一定会引起回流。如何最小化repain...

2018-08-21 15:44:15 300

转载 事件侦听器函数

maryun.Event = {    //页面加载完成后    readyEvent:function (fn) {        if(fn==null){            fn = document;        }        var oldonload = window.onload;        if(typeof window.onload != 'fun...

2018-08-20 16:17:24 518

转载 map()和reduce()函数

有一个函数f(x)=x2,要把这个函数作用在一个数组[1, 2, 3, 4, 5, 6, 7, 8, 9]上,就可以用map实现如下:由于map()方法定义在JavaScript的Array中,我们调用Array的map()方法,传入我们自己的函数,就得到了一个新的Array作为结果:function pow(x) { return x * x;}var arr = [...

2018-08-16 22:59:56 175

原创 页面海量数据优化加载

要求:将10W条数据一次渲染到页面上?分析:·数据量过大,出现卡顿感的主要原因是,在每次循环中,都会修改 DOM 结构,并且由于数据量大,导致循环执行时间过长,浏览器的渲染帧率过低。·从 减少 DOM 操作次数 和 缩短循环时间 两个方面减少主线程阻塞的时间.·通过 DocumentFragment 的使用,减少 DOM 操作次数,降低回流对性能的影响;·在缩短循环时间方面,我们可以...

2018-08-16 21:21:59 1437

原创 网易笔试—按字典序为字符串数组排序

题目要求:字符串由n个'a',m个'z'组成,对所有可能出现的字符串按照字典序排列,找出第K个字符串。思路:生成所有可能的字符串数组 对数组排序 找出对应的第k个字符串sort(),数组按字母顺序对数组中的元素进行排序,说得更精确点,是按照字符编码的顺序进行排序。生成所有可能的字符串数组:递归。对于ab的排列值,先求出b的排列值,然后将a放置与b之前和b之后,得到ab的排列值。...

2018-08-14 17:31:12 1029

原创 性能调优

       大约 80%-90% 的终端响应时间是花费在前端,其中包含下载页面中的图片,样式表,脚本,flash等。Yahoo 为此总结了 14 条规则,成为网站性能优化的事实标准。雅虎网站性能优化的 14 条规则:尽可能减少 HTTP 请求数 使用 CDN(内容分发网络) 为文件头指定 Expires 或 Cache-Control,使内容具有缓存性(资源失效时间) 使用 Gzip...

2018-08-13 22:11:34 104

原创 JS内存泄漏

内存泄露是指一块被分配的内存既不能使用,又不能回收,直到浏览器进程结束。       垃圾回收器定期扫描对象,并计算引用了每个对象的其他对象的数量。如果一个对象的引用数量为 0(没有其他对象引用过该对象),或对该对象的惟一引用是循环的,那么该对象的内存即可回收。 setTimeout 的第一个参数使用字符串而非函数的话,会引发内存泄漏。 闭包、控制台日志、循环(在两个对象彼此引用且彼此保...

2018-08-13 22:07:53 205

空空如也

空空如也

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

TA关注的人

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