- 博客(18)
- 收藏
- 关注
原创 混合App原理
前言Hybrid AppHybrid App是指介于web-app(网页APP,如京东web)、native-app(原生应用,如手机上面的APP应用)这两者之间的app,它虽然看上去是一个Native App,但只有一个WebView ( WebView,可以类比成iframe ),里面访问的是一个Web App,就是包了个客户端的壳,其实里面是HTML5的网页。工作原理混合APP就是在:android系统和ios系统直接使用系统默认浏览器进行轻量的嵌套使用,是基于原生js和html5来开发
2020-12-07 21:04:58
248
原创 如何根据设计图设计rem比例
创建js文件代码如下当前尺寸是320根据设计图尺寸不一样做出相应的修改就好(function(doc,win){ var docEl =doc.documentElement, resizeEVent = "orientationchange"in window ? "orientationchange" :"resize" recalc = function(){ var clientWidth = docEl.clientWidth if(.
2020-12-07 20:56:01
119
原创 js 单线程、宏任务与微任务的执行顺序
js 单线程众所周知js是单线程,但js是可以执行同步和异步任务的,同步的任务众人皆知是按照顺序去执行的;而异步任务的执行,是有一个优先级的顺序的,包括了 宏任务(macrotasks)和 微任务(microtasks)宏任务是指消息队列中的等待被主线程执行的事件,宏任务执行时都会重新创建栈,然后调用宏任务中的函数,栈也会随着变化,但宏任务执行结束时,栈也会随之销毁。包括 整体代码script,setTimeout,setInterval ,setImmediate,I/O,UI rende
2020-12-07 20:46:25
125
原创 vue项目中的微信支付与支付宝支付
业务场景介绍H5移动端支持微信支付 [ 微信支付分为微信内支付(JSAPI支付官方API)和微信外支付(H5支付官方API)] && 支付宝支付[手机网站支付转 APP 支付 官方API ]订单生成逻辑:前端请求后端提交订单,后端去和微信或者支付宝对接生成订单(后续支付都是这个逻辑进行的对接1 .vue微信支付微信支付又分为微信内支付和微信外支付流程如下1.在订单组件中选择支付方式之后在支付页面先去判断是否是在微信内://判断是否微信 is_weixn(
2020-12-07 18:37:18
964
原创 uinapp的基础理解和开发项目遇到的坑
uinapp的基础理解和开发项目遇到的坑前言都有哪些项目上出现的问题,以及如何解决的从uniapp使用的开发软件,到创建,到运行,如何打包不同平台的代码,如何打包apk,云打包,如何运行在不同的端uniapp怎么进行路由跳转怎么配置tabbar如何请求接口如何使用组件基础语法是什么生命周期都有哪些uniapp中 nvue是什么?描述一下他的特点如何进行存储数据,获取数据css像素单位使用什么最合适1.开发uniapp项目写样式是一个难题虽然有多个插件但是那些插件没有一个固定
2020-12-04 20:55:50
606
原创 小程序遇到的问题
小程序开发遇到的问题1.小程序出现“根据 sitemap 的规则[0],当前页面 [pages/index/index] 将被索引”的警告sitemap 的索引提示是默认开启的,如需要关闭 sitemap 的索引提示,可在小程序项目配置文件 project.config.json 的 setting 中配置字段 checkSiteMap 为 false2.获取上个页面传递的数据在 onLoad 里得到,onLoad 的参数是其他页面打开当前页面所传递的数据3.通过使用data - xxxx
2020-11-29 19:55:21
201
1
原创 小程序登录流程
小程序登录流程上图就是微信小程序授权登录流程图大致分为 小程序授权 小程序判断新老用户获取token 小程序登录1.小程序授权微信授权是通过绑定 bind:getuserinfo 事件来返回微信的一些加密之后的信息和偏移信息应作用域不同所以需要先用this.setData()更新一下或者在调用login函数是传参但这个方法我只是一个思路不知道是否可行所以就用了一个复杂一点的方法小程序登录事件使用wx.login()获取暂时令牌判断是否存在暂时令牌调用接口传入暂时令牌进行登录判断
2020-11-29 19:34:17
161
原创 微信小程序
浅谈微信小程序1.生命周期1.onLoad():页面加载时触发,一个页面只加载一次。2.onShow():页面显示切换的时候触发3.onReady():页面初次渲染完成时触发。一个页面只会调用一次,代表页面已经准备妥当,可以和视图层进行交互4.onHide():页面卸载时触发小程序的框架:小程序框架有两个层,一是视图层,一是逻辑层。 框架的视图层:1.由 WXML 与 WXSS 编写,由组件来进行展示。2.将逻辑层的数据反应成视图,同时将视图层的事件发送给逻辑层。3.WXML
2020-11-21 16:27:13
225
1
原创 js面向过程与面向对象
js面向过程与面向对象1面向过程与面向对象面向过程:面向过程专注于如何去解决一个问题的过程步骤。编程特点是由一个个函数去实现每一步的过程步骤,没有类和对象的概念。面向对象:专注于由哪一个对象来解决这个问题,编程特点是出现了一个类,从类中拿到对象,由这个对象去解决具体问题。对于调用者来说,面向过程需要调用者自己去实现各种函数。而面向对象,只需要告诉调用者,对象中具体方法的功能,而不需要调用者了解方法中的实现细节。2面向对象的三大特征面向对象的三大特征是继承、封装、多态。JS可以模拟实现继承和
2020-11-17 19:15:08
814
原创 webpack整理
webpack整理 搭建过程 以及每个步骤的含义webpacksass gulp转换成css文件一个页面很多个js文件,维护只能加 轻易不能删页面的优化,js/html/css文件的压缩,图片压缩webpack 是什么?打包工具 (静态资源打包工具) 前端必备webpack 的特点?1. js依赖进行整合处理 (打包整合)2. 一些预处理的sass,less可以在环境中进行编译 (转换)3. 可以对js、html、图片等进行压缩 (优化)webpack的核心?1.
2020-11-17 18:55:25
86
转载 浅谈js
浅谈jsjs的组成ECMAScript(ES) : 负责翻译,为js的核心,解释器。DOM (Document Object Model 文档对象模型):赋予js操作HTML的能力,document。BOM (Browser Object Modal 浏览器对象模型):赋予js操作浏览器的能力,window,不兼容不建议使用。变量类型5种基本类型:null,undefined,boolean,number,string1种复杂类型:object5种引用类型:Array,Object,Func
2020-11-15 20:40:34
108
原创 使用promise封装 原生ajax,$.ajax(),以及fetch?
如何使用promise封装 原生ajax,$.ajax(),以及fetch使用Promise封装的原生AJAX请求(优点: 看起来比较清晰;并且不会产生回调地狱的请求)//接口地址为;son-server 模拟API 启动方式: json-server --watch db.json;//创建一个Promise 实例const p = new Promise((resolve, reject) =>{//创建对象const xhr = new XMLHttpRequest() /
2020-11-12 19:56:35
96
原创 HTTP,HTTPS详解以及get post区别,状态码
HTTP,HTTPS详解以及get post区别,状态码一、什么是HTTP协议 HTTP是hypertext transferprotocol(超文本传输协议)的简写,它是TCP/IP协议的一个应用层协议,用于定义WEB浏览器与WEB服务器之间交换数据的过程。客户端连上web服务器后,若想获得web服务器中的某个web资源,需遵守一定的通讯格式,HTTP协议用于定义客户端与web服务器通迅的格式。二、HTTP协议的版本 HTTP协议的版本:HTTP/1.0、HTTP/1.1三、HTT
2020-11-11 19:12:42
409
原创 ES6的新增
关于ES6,都有哪些新增,经常使用的有哪些,变量声明let 和const箭头函数模板字符串(template string)解构赋值函数的参数默认值Spread / Rest 操作符for…of 和 for…in模块化 export 和 importPromise1.变量声明 let 和const let 允许创建块级作用域,ES6 推荐在函数中使用 let 定义变量,而非 var:同样在块级作用域有效的另一个变量声明方式是 const,它可以声明一个常量。ES6 中,const
2020-11-10 18:44:00
616
原创 vue指令动态绑定class样式单选多选
标题vue常用指令与动态绑定class样式 单选效果与多选效果v-model:双向数据绑定一般用于表单元素在这里插入图片描述v-for:对数组和对象进行循环操作。v-on:进行事件的绑定,v-on:事件名 = ‘事件函数’。简写 @事件名 = ‘事件函数’v-if/v-show :都是用来显示和隐藏标签元素。只是一个是判断dom dom会进行销毁一个是显示隐藏dom dom不会销毁v-bind:属性名 = “”进行属性的绑定。最常用的是:class,:style。:属性名 是简写形式
2020-11-09 17:21:09
595
原创 2020-11-09
vuex的基本介绍Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex 也集成到 Vue 的官方调试工具 devtools extension,提供了诸如零配置的 time-travel 调试、状态快照导入导出等高级调试功能vuex一共分为五部分State 状态#单一状态树他是vuex用来管理所有定义状态的Getter 计算属性Vuex 允许我们在 store 中定义“ge
2020-11-09 08:18:19
152
原创 2020-11-06
vue上传头像与地址三级联动思路上传头像与地址三级联动的思维导图上传头像思路1.请求项目中的个人信息接口2.渲染数据3.点击头像4.跳转页面5.获取本地数据6.上传头像7.请求项目中的修改个人信息接口8.刷新接口9.渲染新数据10.实现上传头像功能地址三级联动思路1.请求项目中的地址接口2.点击出现选择地址的弹框3.确定省然后获取市4.通过市获取区5.确定数据6.请求项目中的修改个人信息接口7.刷新接口8.渲染新数据9.实现地址功能...
2020-11-06 21:45:11
111
原创 2020-10-30
vue中关于api封装 搭建,注册登录 和token的一些理解一、axios的封装在vue项目中,和后台交互获取数据这块,我们通常使用的是axios库,它是基于promise的http库,可运行在浏览器端和node.js中。他有很多优秀的特性,例如拦截请求和响应、取消请求、转换json、客户端防御XSRF等。在一个项目中我们如果要使用很多接口的话,总不能在每个页面都写满了.get()或者.post()吧?所以我们就要自己手动封装一个全局的Axios网络模块,这样的话就既方便也会优化代码。安装np
2020-10-30 20:55:43
117
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人