自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vue和uniapp两者的区别

vue和uniapp的区别uniapp开发可以编译到(头条,支付宝,微信,QQ,百度)小程序,安卓版,ios版,h5版。通过打包实现一套代码多端运行;vue是一个单页面应用,在app上面会卡死vue是一个框架,开发的时候可以借助ui组件库进行开发uniapp的开发主要依靠uniapp自己封装的组件,一可以借助外部的ui组件库里面的标签也发生了变化,...

2020-11-03 15:21:46 8155 4

原创 防抖和节流简单代码

防抖export function debounce(fn, delay) { var delay = delay || 200; var timer; return function () { var th = this; var args = arguments; if (timer) { clearTimeout(timer); } timer = setTimeout(f

2020-12-09 13:57:52 913 1

原创 前端微信支付与支付宝支付

业务场景介绍:H5移动端支持微信支付 [ 微信支付分为微信内支付(JSAPI支付官方API)和微信外支付(H5支付官方API)] && 支付宝支付[手机网站支付转 APP 支付 官方API ]订单生成逻辑:前端请求后端提交订单,后端去和微信或者支付宝对接生成订单(后续支付都是这个逻辑进行的对接移动端微信支付在移动端微信支付分为微信内支付和微信外支付。1.在订单组件中选择支付方式之后在支付页面先去判断是否是在微信内://判断是否微信 is_weixn(){

2020-12-07 20:46:28 950

原创 根据设计图设计rem比例

一、什么是remrem是相对长度单位。相对于根元素(即html元素)font-size计算值的倍数的一个css单位,也就是我们 前端常说的适配单位rem。因为rem的特性相对长度单位,常被用来做移动适配,pc端页面不推荐使用rem。二、rem的移动适配原理举个列子:设计稿宽度:600px移动设备:600px设置html的 font-size= 移动设备 / 设计稿宽度 * 100 = 100px,那么 1rem = 100px设置一个盒子的宽度: width=1rem(即100px),此时

2020-12-07 20:27:11 768

原创 js 单线程、宏任务与微任务的执行顺序

js 单线程众所周知js是单线程,但js是可以执行同步和异步任务的,同步的任务众人皆知是按照顺序去执行的;而异步任务的执行,是有一个优先级的顺序的,包括了 宏任务(macrotasks)和 微任务(microtasks)宏任务是指消息队列中的等待被主线程执行的事件,宏任务执行时都会重新创建栈,然后调用宏任务中的函数,栈也会随着变化,但宏任务执行结束时,栈也会随之销毁。包括 整体代码script,setTimeout,setInterval ,setImmediate,I/

2020-12-07 20:20:36 531

原创 uniapp封装require

封装const commonUrl = "https://www.xxxxxx/upload/"; //公共路径 // post请求封装function postRequest(url, data) { var promise = new Promise((resolve, reject) => { var that = this; var postData = data; uni.request({ url: c

2020-12-04 21:56:58 6058 3

原创 从uniapp使用从开发到打包

使用软件我自己是在HBuilder X中开发创建uniapp项目运行uniapp项目如何打包不同平台的代码1.需要使用编辑器HBuilder X,和掌握uniapp语法来编写2.写完以后如何打包上线先要点击util文件夹下的manifest.json文件完成项目配置然后点击发行就可以打包成各种类型的版本了如何打包apk云打包,如何运行在不同的端1. uni-app 云打包流程:发行 -> 原生app云打包 -> 使用DCloud公用证书 -> 输入包

2020-12-04 20:32:13 685

原创 关于uniapp的总结

一 .开发过程中项目出现得问题tabbar导航栏问题在写项目的时候前期需求要求底部导航栏中间部分凸起,样式为一个蓝色的圈圈,而原生的uniapp不支持自定义底部导航栏,于是需要进行自定义修改。解决方法在uniapp官网的插件市场中,根据别人写的插件,使用非原生的方式自行实现底部导航栏和页面跳转(此时pages.json对底部导航栏的功能将不再使用)。路径跳转出现问题1、在使用navigator标签还有uni.navigateTo的时候,页面跳转不成功,pages.json中已经注册过

2020-12-04 20:26:16 1018

原创 微信小程序中开发常见问题

(1) 分隔线高度使用rpx问题在相邻的两条信息直接都会有一个分割线,将线的高度都设置成1rpx,在第一条和第二条之前的分隔线没有显示,但是其他的都展示了,分割线的属性是一样的,而且在不同的手机上(分辨率不同)不显示的分割线也是不同的,有的分辨率好几条分割线都不显示,不知道这是模拟器的bug还是rpx的bug。解决方法:分割线的高度尺寸单位使用了px,解决了这个问题。(2) Page注册问题这个错误可能很容易理解,页面注册错误。页面是通过Page对象来渲染的,每个页面对应的js文件必须要创建page,

2020-11-29 21:25:02 203

原创 微信小程序授权登录

微信小程序登录授权在项目中,登录,授权页面,都必须要传递token值。一般商品详情页面的商品收藏,加入购物车。购物车页面都需要传递token。token是什么?token是前端鉴权的一种方式,token由后端生成, 是有时效性的。登录一、调用wx.login()小程序端通过调用wx.login()API,调用成功的话会在成功的回调里获取一个有时效的登录凭证code。然后调用自家的服务器接口,把获取到的code传递给服务端。wx.login({ success (res) { i

2020-11-29 19:06:01 330 2

原创 微信小程序总结

什么是微信小程序微信小程序,小程序的一种,英文名Wechat Mini Program,是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或搜一下即可打开应用。https://mp.weixin.qq.com/cgi-bin/wx页面生命周期页面的生命周期,这个比较重要,大家可以看下理解下。看下逻辑层需要注意的。除了页面的生命周期,还有页面的监听事件。onPullDownRefresh():监听用户下拉刷新事件。需要在app.json的window选项中或页面配置中开

2020-11-21 20:40:42 119

原创 对js的个人理解(2)

js的数组第一种: var arr = [1,2,3] || var arr = [1,“2”,true]第二种: 使用内置对象 Array,var arr = new Array(5); //定义了一个长度为5的数组。    arr[0] = “1”; arr[1] = 2; arr[2] = true;第三种: 使用内置对象 Araay,    var arr = new Array(3,“4”,true);//定义一个数组,其中值为:3,4,true数组小常识数组中有

2020-11-18 19:04:35 109

原创 Webpack教程

什么是WebpackWebpack是一个模块打包器,它的主要目标是将JavaScript文件打包在一起,打包后的文件用于在浏览器中使用。 ----Webpack中文文档使用步骤安装npm install --save-dev webpacknpm install --save-dev webpack-cli这两行命令会为你的项目安装webpack和webpack-cli包,前者是webpack的核心库,后者是分离出来的webpack命令行功能,我们需要使用webpack-cli来进行项目

2020-11-18 09:14:37 149

原创 对js的个人理解

什么是jsJS是JavaScript的简称,是一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML网页上使用,用来给HTML网页增加动态功能。什么是DOM什么是DOM?简单地说,DOM是一套对文档的内容进行抽象和概念化的方法, 文档对象模型(DocumentObject Model,简称DOM),是W3C组织推荐的处理可扩展标记语言的标准编程接口。通过 DOM 提供的接口可

2020-11-15 20:54:34 1075

原创 promise封装 原生ajax,$.ajax(),以及fetch

promise封装 原生ajaxget方式function fetch(url){ return new Promise((res,rej)=>{ let xhr=new XMLHttpRequest(); xhr.open('GET',url); xhr.onreadystatechange=function(){ if(xhr.readyState==4&&xhr.status==200){

2020-11-12 20:26:43 128

原创 Vue自定义指令理解

1,v-on可以缩写为@,用于监听指定元素的DOM事件,比如点击事件,:click 给标签绑定函数,函数必须写在methods里面。绑定事件监听器。2,v-forv-for="(item,index) in/of 数组json" 循环数组或json,基于一个数组或者对象渲染一个列表,循环指令,vue2.0以上必须需配合 key值 使用。3,v-pre把标签内部的元素原位输出,直接显示原始 Mustache标签。跳过这个元素和它的子元素的编译过程。跳过大量没有指令的节点会加快编译。(如

2020-11-09 21:27:02 365

原创 vuex的概念

Vuex是专门为vue.js应用程序开发的状态管理模式,它其实就相当于一个公共仓库,保存着所有的组件都能公用的数据它的状态存储是响应式的,如果我们的组件使用了vuex,一旦里面的里面的state发生改变,它所关联的所有组件都会发生改变,这样为我们开发项目项目提供极大的便利,vuex还不能直接修改Vuex的状态:如果是个全局对象变量,要修改很容易,但是在Vuex中不能这样做,想修改就得使用Vuex提供的唯一途径:显示地提交(commint)mutations来实现修改。这样做的好处就是方 便我们跟踪每一个

2020-11-09 08:29:33 108

原创 vue中key的作用以及原理

key的作用:在diff算法执行时,更快的找到对应的节点,高效的更新虚拟dom,key是具有唯一性的,所以在每次for循环的时候,我们需要key给每个节点做唯一的标识,唯一标识可以使item里面id index 等 然后diff算法就可以正确的识别此节点,找到正确的位置插入新的节点,Vue 会尽可能高效地渲染元素,通常会复用已有元素而不是从头开始渲染。这么做使 Vue 变得非常快,但是这样也不总是符合实际需求。2.2.0+ 的版本里,当在组件中使用 v-for 时,key 是必须的原理: k.

2020-11-03 15:20:55 3636

原创 关于app封装 搭建 注册登录 关于token的理解

一、App开发是什么?简单说一下App开发,App开发,是指专注于手机应用软件开发与服务。 App是application的缩写,通常专指手机上的应用软件,或称手机客户端。另外有很多在线app开发平台。移动互联网时代是全民的移动互联网时代,是每个人的时代,也是每个企业的时代。APP便捷了每个人的生活,APP开发让每个企业都开始了移动信息化进程。二、App布局App开发与pc开发最大的不同应该是布局单位的改变,如果使用px会导致不同手机大小显示的内容不同,所以要进行单位的改变app布局remfun

2020-11-01 21:37:46 339

原创 网络封装APi

vue项目-封装API接口1.在/src/下创建一个js文件 AxiosAsk.jsimport Vue from 'vue'import axios from 'axios'var vm = '';Vue.prototype.thisVm = function(_this) { vm = _this;}const APIASK = (url, type, data) => { let hostUrl = JSON.parse(localStorage.LMUrl).hostUrl;

2020-11-01 21:31:23 199

原创 generator函数详解

Generator 函数的定义语法上,可以把理解成,Generator 函数是一个状态机,封装了多个内部状态。 形式上,Generator函数是一个普通函数。它不同于普通函数,是可以暂停执行的,所以函数名之前要加星号,以示区别。整个Generator函数就是一个封装的异步任务,或者说是异步任务的容器,异步操作需要暂停的地方,都用yield语句什么是Generator函数function 关键字和函数之间有一个星号(*),且内部使用yield表达式,定义不同的内部状态。调用Generator

2020-10-20 19:51:23 452

原创 Vue 简单购物车实现

vue——购物车代码<template> <div> <!-- 头部导航 --> <van-sticky> <van-nav-bar title="商品详情" left-text="返回" left-arrow @click-left="back" >`在这里插入代码片` <template #right>

2020-10-20 19:04:07 558

原创 Ajax 是什么?以及如何创建 Ajax?

Ajax 是什么?以及如何创建 Ajax?Ajax主要用来实现客户端与服务器端的异步通信效果,实现页面的局部刷新。早期的浏览器并不能原生支持 ajax,可以使用隐藏帧(iframe)方式变相实现异步效果,后来的浏览器提供了对 ajax 的原生支持 .2、使用 ajax 原生方式发送请求主要通过 XMLHttpRequest( 标准浏览器 ) 、ActiveXObject(IE 浏览器)对象实现异步通信效果 .3、基本步骤ar xhr = null; //创建对象if (window.XMLHt

2020-10-20 18:52:36 300 1

原创 解构赋值

解构赋值从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)解构赋值,左右结构必须一样,使用左边定义的值,快速的取出数据中对应的数据值,而且 定义和赋值必须放到一起,不然的话就会报错,取不出来数据值,而且左边也必须是一个 js 存在数据结构不然的话也会报错,解构赋值的主要作用还是,快速的让我们在数据中抓取出我们想要的数据。比如ui组件库:import {Button,Search} from 'ui组件库'用于对数组跟对象进行解构var jsonData = {

2020-10-20 18:43:45 455

原创 什么是虚拟dom?什么是diff算法?详解

什么是虚拟dom?虚拟DOM其实就是一个js对象,就是用对象的方式取代真实的DOM操作,把真实的DOM操作放在内存当中,在内存中的对象里做模拟操作。当页面打开时浏览器会解析HTML元素,构建一颗DOM树,将状态全部保存起来,在内存当中模拟我们真实的DOM操作,操作完后又会生成一颗dom树,两颗DOM树进行比较,根据diff算法比较两颗DOM树不同的地方,只渲染一次不同的地方。diff 算法包括几个步骤:①用js对象构造一个虚拟的dom树,插入到文档中;②状态变更时,记录新树和旧树的差异;③把上面的

2020-10-16 15:01:11 234 1

原创 关于ES6的拓展

一些 ES6的扩展es6部分let,const1.var 定义的变量:全局变量和局部变量(函数)function fn(){ var num = 10; alert(num)}fn();alert(num); //num is not definefor(var i=1;i<=10;i++){ //i是全局的 }alert(i); //11es6中新增了let命令,用来声明变量,它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内{}有效​ 即le

2020-10-16 14:54:21 55

原创 http常见的状态码

http状态码分类:1xx(临时响应)​ 表示临时响应并需要请求者继续执行操作的状态代码​ 2xx(成功)​ 表示成功处理了请求的状态码。​ 常见的 2 开头的状态码有:200 – 服务器成功返回网页​ 3xx(重定向)​ 表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向​ 4xx(请求错误)这些状态代码表示请求可能出错,妨碍了服务器的处理​ 5xx(服务器错误)这些状态代码表示服务器在尝试处理请求时发生内部错误。 这些错误可能是服务器本身的错误,而不是请求出错。常

2020-10-16 14:26:09 125

空空如也

空空如也

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

TA关注的人

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