- 博客(28)
- 收藏
- 关注
原创 windews下载安装Nginx
windews下载安装Nginx一、介绍:Nginx(engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强。二、安装步骤:2.1下载nginx到官网上查看自行选择下载:http://nginx.org/en/download.html2.2、下载后解压,就...
2021-06-07 11:56:06 999
原创 vue-router 鉴权 守卫
写next()相当于 next(true) 继续执行不写 相当于next(false)终止执行next(path)跳转 例如:next("/login")
2021-06-06 21:19:05 1132
原创 js数据类型
数据类型JS分两种数据类型:基本数据类型:Number String Boolean Null Undefined Symbol(ES6)这些类型可以直接操作保存在变量中的实际值。引用数据类型:Object(在JS中除了基本数据类型以外的都是对象,数据是对象,函数是对象,正则表达式是对象)基本数据类型,又称值类型。基本数据类型(六种)存放在栈中基本数据类型是指存放在栈中的简单数据段,数据大小确定,内存空间大小可以分配,它们是直接按值存放的,所以可以直接按值..
2021-06-04 10:58:21 454
原创 vant-ui 按需引入
我们提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言 一、pandas是什么? 二、使用步骤 1.引入库 2.读入数据 总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为..
2021-06-04 10:57:41 1052
原创 axios拦截、api统一管理
简介: axios专门用于我们去请求数据,它本身就支持链式的调用,但是我们写项目的时候,每个页 面都会发送请求,如果平凡的调用axios会写很多重复的代码,所以我们统一封装一个方法,我们的域名一个项目一般是不会改变的,我们可以把那些不变的都封装在这个方法中。然后在另一个文件统一管理我们的请求接口。方便我们后期阅读和维护。...
2021-06-04 10:40:08 604
原创 闭包闭包闭包
一,什么是闭包?闭包就是函数中套了一个函数,内层函数可以访问外层函数中的变量。vue中的data就是一种闭包的形式。闭包作为回调函数,可以实现函数的复用。
2021-06-03 02:14:15 1090
原创 webpack配置打包优化
首先先在根目录下配置 vue.config.js 文件,文件名是固定的不可修改!一、新建vue.config.js,设置静态资源路径为’./’,否则打包后项目无法运行
2021-06-03 01:53:50 680
原创 多环境变量配置
多环境变量配置package.json里的scripts配置servestagebuild,通过--mode xxx来执行不同环境通过npm run serve启动本地 , 执行development 通过npm run stage打包测试 , 执行staging 通过npm run build打包正式 , 执行production"scripts": { "serve": "vue-cli-service serve --open", "s...
2021-06-02 21:09:24 619
原创 transition
transitionTransition 简介:Transition可以设置CSS 属性的过渡效果,它有以下几个属性。transition-property用 nsition-timing-function用于指定过渡的类型 transition-property: 是用于指定应用过渡的属性名称,可以指定多个属性名称,多个属性名称之间用,分隔。 默认值为all也就是所有的元素都应用过渡效果。 想让容器的宽高有一个过渡的效果的代码: 于指定应用过渡属性的名称 ...
2021-06-02 00:46:46 717
原创 keep-alive
keep-alive概念: keep-alive 是 Vue 的内置组件,当它包裹动态组件时,会缓存不活动的组件实例,而不是销毁它们。和 transition 相似,keep-alive 是一个抽象组件:它自身不会渲染成一个 DOM 元素,也不会出现在父组件链中。作用:在组件切换过程中将状态保留在内存中,防止重复渲染DOM,减少加载时间及性能消耗,提高用户的体验性。原理: 在 created 函数调用时将需要缓存的 VNode 节点保存在 this.cache 中/在 rende
2021-06-01 20:28:22 624
原创 事件委托
1.什么是事件委托呢?如果子元素身上绑定了大量相同的事件,我们尽量采用事件委托的方式,把所有子元素的自己的事件委托给父级2.事件委托的原理?事件冒泡
2021-05-30 20:54:18 343
原创 解析this指向
解析this指向调用位置在理解this得绑定过程之前,首先要理解调用位置:调用位置就说函数在代码中被调用得位置(注意:不是声明得位置),只有明白调用位置,才能弄懂this到底引用的是什么! 最重要的就是分析调用栈(为了到达当前执行位置所调用的所有函数)。我们关心的调用位置 function baz(){ //当前调用栈:baz //当前调用位置是全局作用域 console.log("baz"); bar(); //<--bar的调用位置...
2021-05-27 16:46:01 537
原创 call、apply、bind
call、apply、bind1. callcall、apply、bind都是改变this指向的方法fn.call当前实例(函数fn)通过原型链的查找机制,找到function.prototype上的call方法,function call(){[native code]}fn.call()把找到的call方法执行 当call方法执行的时候,内部处理了一些事情 1.首先把要操作的函数中的this关键字变为call方法第一个传递的实参 2.把cal...
2021-05-27 07:55:39 309
原创 原型和原型链
原型和原型链原型:1,所有引用类型都有一个__proto__(隐式原型)属性,属性值是一个普通的对象 2,所有函数都有一个prototype(原型)属性,属性值是一个普通的对象 3,所有引用类型的__proto__属性指向它构造函数的prototypevar a = [1,2,3];a.__proto__ === Array.prototype; // true原型链:当访问一个对象的某个属性时,会先在这个对象本身属性上查找,如果没有找到,则会去它的__p...
2021-05-26 14:11:30 503
原创 数组方法(es4、es5、es6)
数组方法(es4、es5、es6)目录数组方法(es4、es5、es6)js中数组常用的方法:es4中常用方法es5中常用方法es6中常用方法js中数组常用的方法:es4中常用方法1,sort()数组排序可以没有参数使用:将数组中所有的元素都看作字符型数据来进行排序。var num=[10,5,4,0,29,91,52,73,1];console.log(num);num.sort(function(a,b){ return a-b; }) //将num..
2021-05-26 08:05:43 643
原创 arguments
arguments是一个伪(类)数组,指的是函数的参数集合,不能调用数组的方法。1.arguments的特点:只在函数中存在(箭头函数除外)。 有长度length,可通过下标index访问。 是一个集合,存储了我们传入的所有实参。2.arguments方法(转换成真的数组可以使用个数组的方法):1,展开运算符:function fn (){let arr = [...arguments];// arr 就是一个数组}fn(1,2,3)2,call()方法:fun
2021-05-26 07:51:47 367
原创 数据类型判断
数据类型判断几种判断数据类型的方法typeof typeof 对于基本数据类型的判断是没有问题的,但在判断引用数据类型(如:Array,Object,null)是没有用的。 Instanceof instanceof 判断new关键字创建的引用数据类型但它在做判断时不考虑null和undefined以及以对象字面量创建的基本数据类型 constructor 它既可以对进本数据类型进行判断也可以对引用数据类型进行判断,但它也是有缺点的,constructor不能用于undef
2021-05-24 21:24:19 315
原创 深拷贝
深拷贝什么是深拷贝?(先简单理解概念)深拷贝是指,拷贝对象的具体内容,深拷贝在计算机中开辟一块新的内存地址用于存放复制的对象。源数据改变不会影响复制的数据。为什么要使用深拷贝?我们希望在改变新的数组(对象)的时候,不改变原数组(对象)arr=[100,[{a:'hello'},{b:"world"}],{c:"123456789"}];//判断修改的是不是'object'或者null,如果不是object或者null那么直接返回funct...
2021-05-24 00:35:08 353
原创 vue-router
vue-router (两种路由模式、编程式/组件式、如何传参(优缺点)、)目录vue-router (两种路由模式、编程式/组件式、如何传参(优缺点)、)两种模式:路由跳转的方式:路由传参路由守卫路由原理:路由就是用来解析URL以及调用对应的控制器,并返回从视图对象中提取好的网页代码给web服务器,最终返回给客户端。两种模式:hash模式 history模式hash模式:在浏览器中符号的“#”,以及#后面的字符称之为hash,用window.locati..
2021-05-24 00:28:12 305
原创 vuex
vuex (概念、几部分组成、map高级语法、数据持久化)一、概念是一个专为vue.js开发的状态管理器,采用集中式存储的所有组件状态,通过vuex我们可以解决组件之间数据共享的问题,后期也方便我们管理以及维护。二、组成state:存储状态(变量),例如你要存放的数据。 getters:类似于共享属性,可以通过this.$store.getters来获取存放在state里面的数据,可理解为state的计算属性。 mutations:修改状态,并且是同步的。 唯一能改变state的..
2021-05-23 23:50:04 358
原创 Vue组件之间的传值
Vue组件之间的传值1.父传子:在父组件上的自组件标签上绑定一个自定义属性,挂载需要传递的值,在子组件使用props:[ ] 来接受,代码如下:父组件://父组件里,myName是自定义属性, name就是传递的值 <user-detail :myName="name" /> export default { components: { UserDetail }}// 子组件export default { props:
2021-05-21 08:03:06 452
原创 微信小程序实现分享功能
微信小程序实现分享功能在当前页面中给分享按钮的button设置一个open-type属性值为share就可以实现wxml:<button open-type="share">分享</button>
2021-05-17 00:29:34 858 1
原创 微信小程序怎么实现收藏功能
小程序如何写收藏,分享,客服功能收藏页面中注册点击事件 <view class="goods_collect" bindtap="handleCollect"> <text class="iconfont {{isCollect?'icon-shoucang1':'icon-shoucang'}}"></text> <view class="collect_text">收藏</view> </view>
2021-05-17 00:21:04 6495 3
原创 小程序下拉刷新 上拉加载等多
小程序下拉刷新 上拉加载等多下拉刷新在当前页面的json文件中开启上拉刷新 async getGoodsList(){//定义参数信息 var n=this.data.info const res=await request({url:"/goods/search",data:n}); //获取商品总条数 const total=res.total;//计算总页数并向上取整 this.totalPages=Math.ceil(total/n.pagesi...
2021-05-16 23:25:34 380
原创 微信小程序获取收货地址流程
微信小程序获取收货地址流程1.点击事件触发函数,获取用户当前设置2.根据用户当前设置中的用户授权结果,判断是否包含收货地址授权3直接调用wx.chooseAddress(),获取用户收货地址。在微信小程序官方文档中,有一个获取用户收货地址wx.chooseAddress的api,我在使用的时候有一个问题,就是在点击获取收获地址后点击取消,然后不能继续点击这获取收获地址,这里得清缓存后才能再次点击。<button bindtap='aaaaaaa'>获取地址&...
2021-05-16 21:46:32 2715
原创 使用promise封装wx.request()
目录如何使用promise封装wx.request()1.创建目录结构1.在根目录下创建http目录及api.js文件fetch.js以及http.js文件标题2.在根目录下创建env目录,创建index.js配置并导出多个开发环境module.exports={ //开发环境 Dev:{ "BaseUrl":"https://www.develep.com" }, //测试环境 Test:{ "BaseUrl":"https://www.test.
2021-05-16 19:52:14 356
原创 Promise基本使用及方法
Promise基本使用及方法 promise 是异步编程的一种解决方案,是采用链式写法用来处理由回调嵌套引起的回调地狱的问题。 promise可以看做一个包含异步操作结果的容器(成功或失败) Promise有以下几种状态:(状态不可逆) pending: 等待状态。 fulfilled: 成功状态。 rejected:失败状态。promise初始是一个pending状态,到了一定的条件就会变成fulfilled(成功)或者rej...
2021-05-08 08:03:44 838
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人