- 博客(57)
- 收藏
- 关注
原创 https是什么?和http有什么区别?
HTTPS(全称:Hyper Text Transfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。HTTPS和HTTP的区别超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息。HTTP协议以明文方式发送...
2019-10-24 16:52:28
464
原创 在vue后台管理系统场景下,不同的用户有不同的权限
在用户第一次使用普通管理员账号登录成功之后返回的数据里面有token字段,本地存储token字段如果他返回登录页,使用另外一个超级管理员的账号再次登录,还是会返回token字段,重新设置localStorage存储的token可以看到,浏览器里面的token字段已经更新,但是因为是单页面应用,跳转路由进入首页之后,fetch.js里面封装的http方法获取到的localStorage还是上次...
2019-09-08 20:41:08
7124
原创 JWT(json-web-token)技术来做前后端鉴权
1、每次请求都需要携带token字段,可以进行路由等权限的验证2、做前后端验证健全。如果没有携带token去后台,后台会认为没有权限,直接抛出错误3、发起一次登录请求,如果登录验证通过,后台返回数据会包括token字段,本地存储token字段,然后拿着token字段去后台请求对应的用户权限4、客户端收到服务器返回的JWT字段,可以存储在cookie里面,也可以存储在localStorage里...
2019-09-08 20:39:16
467
原创 React生命周期shouldComponentUpdate
1、它可以优化页面渲染,提高性能优化。State状态发生改变的时候触发,可以判断如果新的state跟上一次的状态是相同的我们就可以return一个false来阻止这一次的页面渲染。2、举例:input的初始值是整数1,我们输入的也是1,但是输入之后获取到的是字符串1,这两次的值是一样的,只是类型不一样,我们完全可以不让页面进行重新渲染。3、如果涉及到引用类型的更新,主要就是怎么判断两次的数据值...
2019-09-08 20:38:16
315
原创 地理定位
1、先百度地图申请成为开发者,获取key。然后在Index.html页面引入百度/腾讯地图的一个js文件。2、在需要定位的页面里面new qq.map.geoLocation(key, myID) ,可以拿到当前所在位置的经纬度3、把经纬度传递给后台,后台向地图发起请求,根据经纬度返回附近建筑信息,最后传递给前端进行渲染4、Iframe的src属性可以输出整个百度/腾讯地图...
2019-09-08 20:36:59
167
原创 bindtap和catchtap的区别是什么?
相同点:首先他们都是作为点击事件函数,就是点击时触发。在这个作用上他们是一样的,可以不做区分不同点:他们的不同点主要是bindtap是不会阻止冒泡事件的,catchtap是阻值冒泡的...
2019-08-28 19:58:16
557
原创 简述下 `wx.navigateTo()`, `wx.redirectTo()`, `wx.switchTab()`, `wx.navigateBack()`, `wx.reLaunch()`的区别?
1、wx.navigateTo():保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面2、wx.redirectTo():关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面3、wx.switchTab():跳转到 abBar 页面,并关闭其他所有非 tabBar 页面4、wx.navigateBack()关闭当前页面,返回上一页面或多级页面。可通过...
2019-08-28 19:57:19
1214
原创 小程序关联微信公众号如何确定用户的唯一性?
如果开发者拥有多个移动应用、网站应用、和公众帐号(包括小程序),可通过 unionid 来区分用户的唯一性,因为只要是同一个微信开放平台帐号下的移动应用、网站应用和公众帐号(包括小程序),用户的 unionid 是唯一的。换句话说,同一用户,对同一个微信开放平台下的不同应用,unionid 是相同的...
2019-08-27 17:13:00
2420
原创 微信小程序的优劣势?
优势1、即用即走,不用安装,省流量,省安装时间,不占用桌面2、依托微信流量,天生推广传播优势3、开发成本比 App 低缺点1、用户留存,即用即走是优势,也存在一些问题2、入口相对传统 App 要深很多3、限制较多,页面大小不能超过2M。不能打开超过10个层级的页面...
2019-08-27 17:11:43
961
原创 微信小程序登陆问题?
做一个应用,肯定避免不了登录操作。用户的个人信息啊,相关的收藏列表等功能都需要用户登录之后才能操作。一般我们使用token做标识。小程序并没有登录界面,使用的是 wx.login 。 wx.login 会获取到一个 code,拿着该 code 去请求我们的后台会最后返回一个token到小程序这边,保存这个值为 token 每次请求的时候带上这个值。一般还需要把用户的信息带上比如用户微信昵称,微...
2019-08-27 17:09:09
815
原创 怎么封装微信小程序的数据请求?
网络请求小程序提供了wx.request, 仔细看一下 api,这不就是n年前的 $.ajax 吗,好古老啊。// 官方例子wx.request({ url: 'test.php', //仅为示例,并非真实的接口地址 data: { x: '' , y: '' }, header: { 'content-type': 'application/j...
2019-08-27 17:04:44
3335
1
原创 小程序的生命周期函数?
1、onLoad 页面加载时触发。一个页面只会调用一次,可以在 onLoad 的参数中获取打开当前页面路径中的参数2、onShow() 页面显示/切入前台时触发3、onReady() 页面初次渲染完成时触发。一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互4、onHide() 页面隐藏/切入后台时触发。 如 navigateTo 或底部 tab 切换到其他页面,小程序切入后台...
2019-08-27 17:03:29
265
原创 小程序的wxss和css有哪些不一样的地方?
WXSS 和 CSS 类似,不过在 CSS 的基础上做了一些补充和修改1、尺寸单位 rpxrpx 是响应式像素,可以根据屏幕宽度进行自适应。规定屏幕宽为 750rpx。如在 iPhone6 上,屏幕宽度为 375px,共有 750 个物理像素,则 750rpx = 375px = 750 物理像素2、使用 @import 标识符来导入外联样式。@import 后跟需要导入的外联样式表的相对路...
2019-08-27 17:02:28
2776
原创 小程序的双向绑定和vue哪里不一样?
小程序直接 this.data 的属性是不可以同步到视图的,必须调用:this.setData({ // 这里设置})
2019-08-27 17:01:33
3009
原创 微信小程序原理?
微信小程序采用 JavaScript、WXML、WXSS 三种技术进行开发,本质就是一个单页面应用,所有的页面渲染和事件处理,都在一个页面内进行,但又可以通过微信客户端调用原生的各种接口微信的架构,是数据驱动的架构模式,它的 UI 和数据是分离的,所有的页面更新,都需要通过对数据的更改来实现小程序分为两个部分 webview 和&nb...
2019-08-27 17:01:00
346
原创 ajax请求同步与异步的区别
/同步请求$.ajax({ type:'post', url:"<c:url value='/device/org/' />"+val, data:{'orgId':val}, success:function(data){//function(1) name=data.orgName; }, dataType:"json", async:false});...
2019-08-20 10:52:00
114
原创 jQuery链式调用
jQuery的核心理念是Write less,Do more(写的更少,做的更多),那么链式方法的设计与这个核心理念不谋而合。那么从深层次考虑这种设计其实就是一种Internal DSL。DSL是指Domain Specific Language,也就是用于描述和解决特定领域问题的语言。我们看一段链式代码:$('input[type="button"]') .eq(0).click(...
2019-08-20 10:50:53
206
原创 JavaScript 判断浏览器 (支持内核、外壳、版本)
$(function() { alert(Browser.client.name+ " " +Browser.client.version + " " + Browser.client.type);});var Browser=Browser || (function(window){ var document = window.document, navi...
2019-08-20 10:41:56
223
原创 jquery判断浏览器的内核
<script type='text/javascript'>$(function(){ if($.browser.msie) { alert("IE浏览器"); }else if($.browser.opera) { alert("opera浏览器"); }else if($.browser.mozilla) { ...
2019-08-20 10:40:07
276
原创 http状态码?
1xx(临时响应)表示临时响应并需要请求者继续执行操作的状态代码2xx (成功)表示成功处理了请求的状态码。常见的2开头的状态码有:200 – 服务器成功返回网页3xx (重定向)表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向常见的3字开头的状态码有:301 (永久移动) 请求的网页已永久移动到新位置。 服务器返回此响应时,会自动将请求者转到新位置。 302...
2019-08-05 16:14:06
193
原创 Vue 组件中 data 为什么必须是函数?
//为什么data函数里面要return一个对象<script> export default { data() { return { // 返回一个唯一的对象,不要和其他组件共用一个对象进行返回 menu: MENU.data, poi: POILIST.data ...
2019-08-05 16:11:46
311
原创 vue自定义指令如何实现的和适用场景?
vue除有了v-for,v-if等自带vue指令外,但不能满足所有的开发需求,有时需要自定义指令,自定义指令创建有全局自定义指令和局部自定义指令全局自定义指令:Vue.directive(‘指令名’,{ inserted(el) { } })局部自定义指令:directives:{ }...
2019-08-05 16:10:38
773
原创 vue过滤器做什么的(vue1.x和vue2.x这块的区别)?
vue过滤器主要用于对渲染出来的数据进行格式化处理。例如:后台返回的数据性别用0和1表示,但渲染到页面上不能是0和1我得转换为“男“和”女”,这时就会用到过滤器,还有商品价格读取出来的是普通数值,例如:230035,但我要在前面加个货币符号和千分分隔等,例如变成:¥230,035,都得需要vue过滤器如何创建过滤器呢,跟创建自定义指令类似,也有全局和局部过滤器的形式全局过滤器:Vue.fil...
2019-08-05 16:09:03
407
原创 vue组件通讯(即传值)有哪几种形式,分别是如何实现的?
vue组件通讯大致有三种:父传子,子传父,还有兄弟之间通讯。第一种:父传子:主要通过props来实现的具体实现:父组件通过import引入子组件,并注册,在子组件标签上添加要传递的属性,子组件通过props接收,接收有两种形式一是通过数组形式[‘要接收的属性’ ],二是通过对象形式{ }来接收,对象形式可以设置要传递的数据类型和默认值,而数组只是简单的接收。第二种:子传父:主要通过$emi...
2019-08-05 16:06:07
973
原创 vue生命周期钩子函数有哪些,分别什么时候触发?
vue生命周期即为一个组件从出生到死亡的一个完整周期,主要包括以下4个阶段:创建,挂载,更新,销毁创建前:beforeCreate, 创建后:created挂载前:beforeMount, 挂载后:mounted更新前:beforeUpdate, 更新后:updated销毁前:beforeDestroy, 销毁后:destroyed我平时用的比较多的钩了是created和mount...
2019-08-05 16:02:59
12954
原创 v-if 和 v-show 的区别?
v-if 和 v-show 都可以显示和隐藏一个元素,但有本质区别:v-if:是惰性的,只是值为false就不会加载对应元素,为true才动态加载对应元素。v-show:是无论为 true 和 false 都会加载对应 html 代码,但为 false 时用display:none隐藏不在页面显示,但为 true 时页面上用display:block 显示其效果。适用场景:切换频繁的场合用 ...
2019-08-04 20:18:18
142
原创 Vue常用的修饰符?
v-on指令常用修饰符:.stop:- 调用event.stopPropagation(),禁止事件冒泡。.prevent:- 调用event.preventDefault(),阻止事件默认行为。.capture:- 添加事件侦听器时使用 capture 模式。.self:- 只当事件是从侦听器绑定的元素本身触发时才触发回调。.{keyCode | keyAlias}: - 只当事件是从...
2019-08-04 20:11:17
777
原创 Vue常用基本指令有哪些?
v-if:根据表达式的值的真假条件渲染元素,在切换时元素及它的数据绑定/组件被销毁并重建。v-show:根据表达式之真假值,切换元素的display CSS 属性。v-for:循环指令,基于一个数组或对象渲染一个列表,Vue 2.0 以上必须需配合key值使用。v-bind:动态地绑定一个或多个特性,或一个组件prop到表达式。v-on:用于监听指定元素的DOM事件,比如点击事件。绑定事件...
2019-08-04 19:36:01
2449
原创 Vue最大的特点(核心)是什么?
Vue最大特点我感觉就是“组件化‘和”数据驱动“?组件化就是可以将页面和页面中可复用的元素都看做成组件,写页面的过程,就是写组件,然后页面是由这些组件”拼接“起来的组件树。数据驱动就是让我们只关注数据层,只要数据变化,页面(即视图层)会自动更新,至于如何操作dom,完全交由Vue去完成,咱们只关注数据,数据变了,页面自动同步变化了,很方便。...
2019-08-04 19:26:22
7895
原创 深拷贝,浅拷贝?
用ES6的Object.assign({},{})进行对象合并,如果是数组可以用ES6的Array.from,或是ES6的扩展运算符…arr,如果使用ES5需要用循环来做浅拷贝,如果是深拷贝需要用递归的形式来实现,当然也可以使用JSON.parse(JSON.stringify(对象))的方式实现深拷贝。...
2019-08-04 19:17:21
139
原创 ajax缓存如何解决?
通过在文件名后面添加随机数(也称为文件指纹)来实现,主要原理是浏览器对访问过的文件,首先会检测第二次请求的文件url在浏览器是否缓存过,如果缓存过就使用,否则如果是一个新的文件url,则从服务器重新请求。...
2019-08-04 19:13:16
244
原创 call,apply,bind区别?
call,apply,bind主要作用都是改变this指向的,但使用上略有区别,说一下区别:call和apply的主要区别是在传递参数上不同,call后面传递的参数是以逗号的形式分开的,apply传递的参数是数组形式【Apply是以A开头的,所以应该是跟Array(数组)形式的参数】bind返回的是一个函数形式,如果要执行,则后面要再加一个小括号,例如:bind(obj,参数1,参数2,)()...
2019-08-04 19:09:53
173
原创 JS数据类型
JS数据类型有:基本数据类型:number,string,Boolean,null,undefined,symbol(ES6新增)复合类型:Object,function
2019-08-04 19:05:14
167
原创 Ajax, Axios, Fetch之间的区别
1 、JQuery ajax$.ajax({ type: 'POST', url: url, data: data, dataType: dataType, success: function () {}, error: function () {}});Ajax是对原生XHR的封装,为了达到我们跨越的目的,增添了对JSONP的支持。经过这么多年的更新维护,不得不承...
2019-08-03 11:03:53
227
原创 Node课程(3,2,1,8,3)
(3)三大模块:全局对象 :window global console setTime系列 module exports buffer核心模块 :http fs events path url queryString(qs)os util外部模块 : express axios webpack vue 等等 犹如星星数不完(2) 两个重要知识点:数据的请求返回:数据影响NPM: ins...
2019-08-03 09:48:23
140
原创 JS设计模式有哪些(单例模式观察者模式等等)
JS设计模式有很多,但我知道的有单例模式,观察者模式单例模式:就是保证一个类只有一个实例,实现的方法一般是先判断实例存在与否,如果存在直接返回,如果不存在就创建了再返回,这就确保了一个类只有一个实例对象。在JavaScript里,单例作为一个命名提供者,从全局命名空间提供一个唯一的访问点来访问该对象。观察者模式:观察者的使用场合就是:当一个对象的改变需要同时改变其它对象,并且它不知道具体有多少...
2019-08-02 20:39:29
195
原创 JS数组内置遍历方法有哪些和区别
JS数组内置遍历(遍历就是循环的意思)方法主要有:forEach:这个方法是为了取代for循环遍历数组的,返回值为undefined例如:let arrInfo=[4,6,6,8,5,7,87]arrInfo.forEach((item,index,arr)=>{//遍历逻辑})其中:item代码遍历的每一项index: 代表遍历的每项的索引arr代表数组本身filte...
2019-08-02 20:37:32
430
原创 JS数组常用方法?
在开发中,数组使用频率很频繁,JS数组常用方法有:push,pop,unshift,shift,splice,join,concat,forEach,filter,map,sort,some,every好多,不过都是平时开发中很常用的方法。...
2019-08-02 20:08:40
92
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人