- 博客(42)
- 收藏
- 关注
原创 react中使用codeMirror之代码对比方法:codeMirror.mergeView()
codeMirror是一个很强大的代码编辑器,其中的mergeView方法可以进行代码的对比官网地址:https://codemirror.net/gitHub地址:https://github.com/codemirror/CodeMirror参考:https://www.jianshu.com/p/2ba3cf5057c6使用1.下载codemirrornpm install co...
2020-03-04 17:17:57
6288
3
原创 antd中树形表格tab切换时出现表格数据不清空的情况
大家肯定会有这样的需求,表格需要进行数据切换,antd很强大,当你的数据是树形结构时,会自动生成树形表格,就像下面这样(图为官网图片)但是你会发现,当你需要切换表格数据的时候,会出现表格数据不清空的情况,上一个tab的数据会掺杂在下一个tab中,这个问题让我非常苦恼,这是因为antd在进行切换表格数据的时候没有清空数据,所以出现了这样的情况,解决方案:在切换数据的函数里面加上这样一句话来清空数...
2020-02-24 12:08:30
1407
1
原创 深拷贝和浅拷贝
一,数据类型1.基本数据类型:Number,String,Boolean,Undefined,Null2.引用数据类型:Object(Function,Array,Date,RegExp)基本数据类型和引用数据类型的区别1,保存的位置不同基本数据类型主要存储到栈中引用数据类型主要存储在堆当中引用数据类型在内存中的存储情况:1,在堆里开辟一个存储空间,把数据存储到存储空间里面,2把存储...
2019-12-07 17:40:05
379
原创 git与gitHub协同开发
什么是git?参考文档:https://www.liaoxuefeng.com/wiki/896043488029600git是目前世界上最先进的分布式版本控制系统什么是版本控制系统?版本控制是指对软件开发过程中各种程序代码,配置文件以及说明文档等文件的变更的管理,是软件配置管理的核心思想之一,版本控制最主要的功能就是追踪文件的变更。它将什么时候、什么人更改了文件的什么内容等信息忠实地了...
2019-12-06 21:15:14
192
原创 在vue中使用swiper插件以及我遇到的坑
如何在vue中使用swiper参考官方文档:https://github.com/surmon-china/vue-awesome-swiper第一步 npm下载swipernpm install vue-awesome-swiper --save第二步:在全局引入swiper插件(main.js)import Vue from 'vue'import VueAwesomeSwip...
2019-12-05 21:23:56
3585
原创 使用阿里云服务器---项目部署上线
什么是项目的部署?项目部署指的是把我们在本地开发的应用,进行打包之后,上传到公网服务器上,可以供互联网上的所有的人进行访问,为所有的人提供服务。项目部署的前置条件完整打包的项目 yarn build需要一台 线上服务器(公网IP)可以去云服务提供商进行购买(阿里云服务器、腾讯云服务器),云服务器购买的时候一般都会赠送一个公网IP地址。什么是云服务器?云服务器指的是通过一定...
2019-11-29 19:01:14
1442
原创 微信支付功能的实现
说明微信支付提供的方式有很多种,但是本文讲的是H5支付,其他支付的实现方式其实大同小异H5支付是指商户在微信客户端外的移动端网页展示商品或服务,用户在前述页面确认使用微信支付时,商户发起本服务呼起微信客户端进行支付。主要用于触屏版的手机浏览器请求微信支付的场景。可以方便的从外部浏览器唤起微信支付。微信官方支付的开发文档https://pay.weixin.qq.com/wiki/doc/...
2019-11-29 17:56:07
741
原创 浅谈TypeScript
先聊聊天vue conf 2019 前段时间在上海召开了,尤大大在会上回忆了vue的发展现状和vue3.0版本的设计目标,在十一月五号已经将vue3.0版本的代码发布到github上面了,预计在明年会出一个稳定的版本那么在vue3.0的设计目标是这样的,希望vue更快,更小,加强typescript的支持等等,由此说明typescript已经越来越重要了什么是 TypeScripttyp...
2019-11-27 16:37:28
267
原创 关于虚拟dom和diff算法
什么是虚拟domVDOM可以看做是一个使用JavaScript模拟了DOM结构的树形结构,可以把他理解为是一个js对象,不论是标签名称还是标签属性或者标签子集,都会在对应的右边的树形结构里为什么要使用虚拟DOM浏览器里一遍又一遍的渲染dom是非常消耗性能的,会引起大量的重绘和回流,应该尽量减少对DOM的操作,这成为了优化前端性能的必要手段,VDOM就是将DOM的对比放在了js层,通过对比不同...
2019-11-26 00:16:16
190
原创 同步和异步的理解
js单线程。因为js里面有dom操作就决定它只能是单线程的,否则会引起冲突,比如删除节点和添加节点,这都是非常常见的操作,但是如果js底层是多线程的,这两个操作放到一起,该执行那一个操作呢这就决定了它只能是单线程那么如果是一个单线程的操作,CPU的还有大量的空余浪费,就不能得以很好的利用,所以就有了同步和异步的操作什么是同步和异步其实浏览器底层在执行js代码的时候,先将同步的代码放到一个执...
2019-11-25 23:18:28
529
原创 关于异步函数和处理方法
js中异步函数有哪些1,promise其实严格意义上来说promise是一种模式,它可以管理异步代码2,setTimeout,异步函数3,事件绑定,事件绑定的方法有三种,一,事件监听,二,对象.on方法,三,直接在行内写事件监听有两种方法,一种是addlisenerevent一种是attachevent两种事件监听的区别addeventlistener参数个数一般是三个,参...
2019-11-25 23:15:53
678
原创 构造函数
构造函数和工厂函数,类的区别构造函数自动创建对象,手动添加成员,通过this添加的。自动返回对象,一般函数名首字母大写工厂函数,手动创建对象,手动添加成员,手动返回对象,一般函数名首字母不大写new的时候做了哪些操作,第一步,在内存中创建一个空对象第二步,设置构造函数的this第三步,执行构造函数当中的代码(为新对象添加属性)第四步,返回新对象普通函数和构造函数的区别普通函数没有...
2019-11-25 23:13:04
165
原创 对于面向对象编程的一点点见解
面向对象编程面向对象和面向过程是两种不同的编程思想,其实面向对象和面向过程并不是完全相对的,也并不是完全独立的。面向对象和面向过程的主要区别是面向过程主要是以动词为主,解决问题的方式是按照顺序一步一步调用不同的函数。而面向对象主要是以名词为主,将问题抽象出具体的对象,而这个对象有自己的属性和方法,在解决问题的时候是将不同的对象组合在一起使用。1.面向过程就是分析出解决问题所需要的步骤,然...
2019-11-25 23:11:22
146
原创 关于闭包
函数有两个阶段定义阶段:1,开辟一个内存空间2,将函数体内一模一样的代码放到空间内3,将存储空间的地址返回给函数名调用阶段:4,在内存中开辟一个执行空间5,将函数存储空间中的代码拿出来放在刚刚开辟的执行空间中执行6,执行完毕,执行空间被销毁闭包:利用函数执行空间不被销毁的逻辑闭包是函数的一种高级用法,有三个条件,一,有不被销毁得空间,二,返回一个复合数据类型,三,内部函数...
2019-11-25 23:09:10
126
原创 同源策略和解决跨域问题
同源策略同源策略是由浏览器给的浏览器不允许我们向别人发送请求,只能向自己的服务器发送请求当我们想向别人的服务器发送请求的时候,就会被浏览器阻止了什么是 “别人的服务器” 呢?当 请求协议/域名/端口号 有任意一个不同的时候,那么就算是别人的服务器这个时候就会触发同源策略我们管触发了 同源策略 的请求叫做跨域请求实现一个跨域请求有的时候我们是需要实现跨域请求的我们需要...
2019-11-11 21:39:49
276
原创 前后端交互手段之ajax
什么是AJAXajax 全名 async javascript and XML是前后台交互的能力也就是我们客户端给服务端发送消息的工具,以及接受响应的工具是一个 默认异步 执行机制的功能AJAX 的优势不需要插件的支持,原生 js 就可以使用用户体验好(不需要刷新页面就可以更新数据)减轻服务端和带宽的负担缺点: 搜索引擎的支持度不够,因为数据都不在页面上,搜索引擎搜索不到...
2019-11-11 19:53:34
457
原创 前后端交互手段之fetch
什么是是fetch也是可以和后端实现交互的一个浏览器自带的 Api。(发网络请求和后台进行交互的)fetch api天生就是Promise的调用方式(方法调用返回值就是一个Promise对象)为什么要使用fetch?为了和后端实现交互,不刷新页面的情况可以获取服务器的资源。注意注意1:fetch 这个 api 是比较新的,只有现代浏览器才可以使用(w3c标准的浏览器,版本比较高)。...
2019-11-11 19:36:48
663
原创 前后端交互手段之axios
什么是axiosaxios 是基于 Promise 对 XMLHttpRequest 的封装。axios 底层还是使用的 ajax。axios 也是一个基于 npm 管理的包。https://www.kancloud.cn/yunye/axios/234845为什么要使用 axios ?是基于Promise的,可以很好的解决 传统的 ajax 回调地狱。什么是回调地狱?回调函数嵌套...
2019-11-11 19:31:29
1025
1
原创 前后端交互手段之websocket
前后端的在做通信的时候,有哪些方式可以实现?img 标签(埋点 一般是为了做更好的用户体验)jsonp (原理是什么?利用 script 的src属性发生网络请求)iframe 技术(低版本的浏览器无刷新的文件上传)flash(actionSrcipt)ajax 技术(formData)websocketwebsocket 是什么?websocket 是一门前后端交互的通信...
2019-11-11 19:21:16
1582
原创 webpack
什么是webpack?为什么在 vue 中使用 npm run build 命令就可以把开发环境中的文件进行合并?无论是 vue 还是 react、angular,使用 cli 创建出来的项目,都自动的把结构做好了,内部的 webpack 也都配置好了,项目开发完毕后,只需要执行 build 命令,就能够把 src 下的文件进行打包,这个打包功能都是由 webpack 完成的,这个配置无需我...
2019-11-11 19:06:33
203
原创 vue之组件间的通信
1. 什么是组件的通信问题?多个组件间的数据的传递共享。2. 为什么会出现这种问题?在使用 vuejs 的组件进行开发的时候,我们的页面不可能只使用一个组件,肯定是很多的组件组合使用(层级关系: 1. 平级、兄弟节点 2. 嵌套:父子、爷孙),同时各个组件内部会有自己的data,然后组件一般来说不可能完全的独立,组件之间一般都要进行数据传递共享,我们称之为:组件间的通信问题。如何解决这种...
2019-11-02 23:49:40
193
原创 vue全家桶之vue-router路由
vuejs 周边生态圈vuejs 本身是有一个很小的框架。喜欢 vuejs 的人很多,这些组织在一起,形成了一个叫做第三方的社区,这些社区存在很多的技术大牛,然后使用 vuejs 做为基础的架构,衍生出来很多和 vuejs 相关的产品,我们称为 vuejs 全家桶。vuejs全家桶(vuejs生态圈) = vuejs + vue-router(路由) + vue-cli(脚手架) + vuex...
2019-11-02 17:07:20
238
原创 vue之slot插槽和render渲染
前置条件?在我们使用组件之后,当组件定义完毕后,我们可以通过标签的方式去使用这个组件,类似于传统的HTML标签的使用,可以使用单标签,也可以使用双标签的方式;在传统的HTML双标签里面,我们可以在标签的内部写一个内容,那么如果是在我们自己开发的组件里面也书写内容,那么会出现什么样的结果?<my-slot>组件的内部写书写了内容</my-slot><scrip...
2019-11-02 16:11:23
5326
原创 vue-cli构建项目---浅析文件
构建web服务器在用vue-cli创建了文件夹(myapp)的前提下cd myappyarn serve然后访问cmd上提示的路径就可以看到一个简单的基于vuejs的项目了代码分析mian.js:入口文件//入口文件// 导入文件。1,vue。2主组件。3.import Vue from 'vue'import App from './App.vue'//导入路由库/...
2019-11-02 15:12:11
223
原创 vuejs全家桶之vuex
什么是vuex?Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex 也集成到 Vue 的官方调试工具 devtools extension,提供了诸如零配置的 time-travel 调试、状态快照导入导出等高级调试功能。总结一下上面官方给出的解释:注意1: vuex 只能在v...
2019-11-02 12:02:34
224
原创 vuejs全家桶之nuxt.js的使用
参考文档官网:https://nuxtjs.org/guide中文:https://zh.nuxtjs.org/guide/installation什么是nuxt.js?Nuxt.js 是一个基于 Vue.js 的通用应用框架。完成 vuejs 项目的服务器端渲染SSR 和我们 nuxt.js 有什么关系?nuxt.js 就是完成 vuejs 项目的服务器端渲染。主要是为了解决 vu...
2019-11-01 22:12:12
1731
2
原创 搜索引擎优化(SEO)
什么是 SEO ?SEO 俗称搜索引擎优化。目前网站基本存在两类:本身就是功能性的网站(-------门户网站:资源信息全部收集起来,新浪、网易、--------企业官网:展示一个企业的形象、-------- 论坛:实现信息的交互、电商网站:购物)还有一类是平台类型的网站,提供给第三方的网站进行入驻,或者说是专门为第三方的网站进行引流、优化(百度、谷歌、必应、阿里巴巴、速卖通、...
2019-11-01 20:51:07
1723
原创 vue 单组件 简介
参考链接https://cn.vuejs.org/v2/guide/single-file-components.html问题:在使用 vuejs 做开发的时候,为了代码的复用和维护一般我们会把那些公共的代码封装为一个一个的组件,然后供其他的地方进行使用,在最初的封装里面我们都是采用全局封装或者局部封装,但是这种封装有很多的弊端问题:全局定义 (Global definitions...
2019-10-30 20:35:49
456
2
原创 vue全家桶之vue-cli简介和npx 的基本使用
vue-cli是一个脚手架可以快速去构建基于vuejs项目(快速的组织一些页面的结构,引入 vuejs 单组件的管理方式)。注意:目前 vue-cli 的版本是4.x(刚刚升级上来的,之前一直使用的都是 2.x 版本,并且 2.x 的版本的使用和3.x版本的使用稍微有些不一样的)。vue-cli的安装npm install -g @vue/cli# ORyarn global add ...
2019-10-30 20:29:07
5419
原创 vue之组件简介和分类
前置条件如果项目开发的比较多、大的情况,发现,很多页面之间其实存在一些公共的部分,可以被反复的进行使用。为了代码的复用,以及后期维护的方便,我们应该尽可能把公共的部分提取出来,然后形成一个独立的部分,然后供其他的部分使用。这个公共的部分我们称之为组件。(很久以前的传统网页开发里面这种我们一般叫做模板继承(layout)。什么是组件?根据经验,或者写了很多代码,把这些可能被复用的代码部分提取出...
2019-10-30 19:29:04
1613
原创 vuejs--基本指令2
v-model 收集表单信息checkbox1,单个复选框复选框选中为true,否则为false模型变量属性值为布尔类型<body><div> <input type="checkbox" v-model="isAgree">{{ isAgree ? '同意':'不同意' }}</div><script src=...
2019-10-26 17:53:53
1842
1
原创 mvvm和双向数据绑定
mvvm这是在官网上面截取的一张图1,mvvm其实是mvc的一种单独的解读,也是一种分层思想只不过mvc是更适合在nodejs中,mvvm存在于前端2,m–>model,v–>view,vm–>view model,这里m就是模型,是一个对象,我们把对象里面的属性叫做模型变量v就是视图,vm相当于c,也就是控制器,这也是为什么我们习惯把vue的实例对象命名为vm的原因...
2019-10-26 14:23:44
884
原创 computed,watch,filter的区别
computed翻译过来是计算出来,意思是某个属性 是依靠其他的模型变量进行得来的<body><p>//在这里插值的是computed里面的change函数 <input type="text" v-model="username">{{ change}}</p><script src="https://cdn.jsdeli...
2019-10-26 13:16:10
724
原创 vuejs之插值表达式
什么是插值表达式?插值表达式是Vuejs中实现数据渲染到页面的一种手段,可以直接让数据从模型到视图,不需要dom操作,在大括号里面给我们提供了js语境,可以执行简单的js代码插值表达式就是{{ }},如下操作,将模型变量中的属性直接放到插值表达式中可以实现数据渲染到页面的效果,<body> <div> {{ title }} <...
2019-10-26 10:25:47
7285
原创 原型和原型链
什么是prototypeprototype是原型,每一个函数中都存在一个prototype对象,调用这个属性,可以给我们生成一些对象空间,该对象空间专门用来存储一些实例相同对象和方法function Person(){ this.name='lily';}Person.prototype.fn=function(){console.log("Hello world")}var p=...
2019-10-26 00:25:39
155
原创 前后端交互手段之JSONP
什么是JSONP?JSONP(JSON with Padding)是JSON的一种“使用模式”,可用于解决主流浏览器的跨域数据访问的问题,它是通过script的src属性实现的什么是跨域?浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域为什么会有跨域问题–同源策略?因为浏览器出于数据安全性的考虑,不允许我们向别的服务器发送请求,只能想自己的服务器发送请...
2019-10-25 22:11:56
424
原创 前后端分离和生成mock数据
什么是mock数据?mock翻译过来是模拟的意思,在前端里面指的是要通过一定的方式去生成模拟数据为什么要生成mock数据?因为现在很多的项目都是前后端完全分离的项目,后端负责提供数据,前端通过api接口请求数据,但是通常情况下,后端的进度要比前端的慢,所以前端要自己想办法去模拟一些数据去测试一下前后端分离模式与不分离模式前后端分离:后端只负责提供数据,前端负责页面,通过api接口请求数据...
2019-10-25 18:56:12
832
原创 JS中this指向问题
函数内部的this之和函数的调用方式有关,和函数的定义方式没有关系1全局函数直接调用,this==>windowfunction fn(){ console.log(this)} fn()//window2对象内部的方法调用,this==>调用者var obj={ fn:function (){ console.log(this) }}obj.fn()//o...
2019-10-25 08:28:31
264
原创 vuejs--基本指令1
vuejs的下载1,可以通过复制官网链接cdn,链接最新版本的vue(最新的稳定版)2,通过nodejs,在其包管理器npm或者yarn进行下载3,直接去github上面下载源码代码托管平台码云 giteegitlab(一个产品,完全类似GitHub或者gitee,是一个可以在企业内部运行的代码托管平台)(商业公司更愿意使用 svn 作为版本控制器)coding.net(深圳一家公...
2019-10-24 23:15:56
169
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人