- 博客(19)
- 收藏
- 关注
原创 混合开发APP
混合开发有三个步骤:1、编写html5界面代码2、android使用WebView3、使用WebView特性,完成交互下面有完整代码第一个是html5的代码<html> <head> <meta http-equiv="content-type" content="text/html;charset=gb2312"> <title>我是测试的html页面的标题</title> </head> <bo
2020-12-07 21:30:26
550
原创 rem比例使用分析
rem是CSS3新增的一个相对单位(root em,根em),这个单位引起了广泛关注。这个单位与em有什么区别呢?区别在于使用rem为元素设定字体大小时,仍然是相对大小,但相对的只是HTML根元素。这个单位可谓集相对大小和绝对大小的优点于一身,通过它既可以做到只修改根元素就成比例地调整所有字体大小,又可以避免字体大小逐层复合的连锁反应。目前,除了IE8及更早版本外,所有浏览器均已支持rem。对于不支持它的浏览器,应对方法也很简单,就是多写一个绝对单位的声明。这些浏览器会忽略用rem设定的字体大小。<
2020-12-07 21:27:13
1059
原创 前端使用支付宝和微信进行移动支付
前端移动支付(微信、支付宝)微信支付微信移动端支付分为两种:在微信浏览器内支付、在其他浏览器支付;微信浏览器内支付(JSAPI):在开始使用微信支付之前需要明确一个变量 trade_type ,这个变量有三个值:NATIVE:扫码支付使用;JSAPI:微信内置浏览器唤起微信支付使用;MWEB:非微信浏览器且非支付宝内置浏览器唤起微信支付使用;然后判断当前浏览器是不是微信浏览器(在支付宝内不能唤起微信支付),具体判断逻辑如下:isWechat = () => { const u
2020-12-07 20:58:33
864
原创 JS单线程与微任务宏任务
每一种语言都有自己的运行机制,javascript当然也不例外,了解了js的运行机制,对于想要深入学习js的我们来说有着莫大的帮助。好了话不多说,下面开始讲述一js的整个运行机制,但是在此之前你先要了解几个概念。下面一一列举,并配合实例来帮助大家理解记忆。一、js是一门单线程的语言那什么是单线程呢。?单线程通俗的来说就是同一时间只能做一件事情,不能同时做几件事情,与传统的后台编程语言如java一般都是多线程的可以同时做几件事情,也就是所谓的并发。 说道为什么不把js设计为多线程并发的呢。?这样不是功
2020-12-07 20:16:14
153
原创 关于uniapp的一些东西
先说一下我自己在开发时遇到的问题,1、使用uniapp开发,在谷歌上会有跨域问题,用微信开发者工具不会有跨域问题配置跨域以后需要重启HBuilderX"h5": { "devServer": { "port": 8080, "disableHostCheck": true, "proxy": { "/api": { "target": "", "changeOrigin": true, "secure": false, "path
2020-12-04 20:30:50
549
原创 微信小程序开发中遇到的问题总结
使用小程序自身的返回键时,页面不会触发onLoad事件,会触发onShow事件小程序没有通配符选择器page, view, scroll-view, swiper, movable-area, cover-view, text, icon, rich-text,progress, button, checkbox-group, checkbox, form, input, label, picker,picker-view, radio-group, slider, switch, textarea
2020-11-29 19:04:01
640
原创 关于小程序授权登录
小程序授权登录流程直接上代码1、 首先打开小程序时 就要判断是否授权//小程序官方文档提供的wx.getSetting方法可以看到各种授权,有兴趣可以自己看看,这里我们就只要scope.userInfo这个属性 wx.getSetting({ success: async (res)=>{ if(res.authSetting["scope.userInfo"]){ console.log("已授权") this. de
2020-11-29 18:47:52
377
原创 微信小程序基础知识
微信小程序基础一、页面文件小程序中的页面文件分为四个,index.wxml、index.wxss、index.js和 index.jsonindex.wxml 是布局文件,index.wxss 是样式文件,index.js 是逻辑文件, index.json 是配置文件页面级别的配置会覆盖全局级别的配置小程序全局通用配置文件只有 app.wxss、app.js和app.json文件,app.wxml文件没有小程序页面级别配置文件有index.js、index.json、index.wxml和in
2020-11-22 20:38:25
2403
1
原创 JS基础整理
js定义函数的方式(两种)函数的声明(函数的声明存在函数提升,意思就是在函数声明可以放在调用他的语句之后)add(1,2) //弹窗显示:3 function add(x,y){ alert(x+y) } 函数表达式(先创建一个匿名函数,然后通过变量赋值,我们知道js中要想使用一个变量必须先给它赋值,函数也不例外,所以在调用前必须赋值,函数的表达式不存在函数提升)add() //会报错var add= function(arg0, arg1, arg2) { //函数体}
2020-11-18 21:32:36
172
原创 Webpack基础用法
webpack 是什么?Webpack 是一个前端资源加载/打包工具。它将根据模块的依赖关系进行静态分析,然后将这些模块按照指定的规则生成对应的静态资源。从图中我们可以看出,Webpack 可以将多种静态资源 js、css、less 转换成一个静态文件,减少了页面的请求。一、手动搭建webpack1、初始化文件npm init -y2、创建src文件夹在内部创建main.jslet app = document.querySelector("#app")app.innerHTML = "
2020-11-17 16:03:16
179
原创 JS基础
一、javascript的简介:*javascript 是一种基于对象和事件驱动的语言,主要应用于客户端。 – 基于对象: 提供了很多对象,可以直接使用。 --事件驱动: html做的网页是静态效果,javascript做的是动态效果。 --客户端: 主要是指浏览器。*js的特点: (1)交互性: --信息的动态交互。 (2)安全性: --s不能访问本地磁盘中的
2020-11-15 22:38:21
162
原创 使用promise封装三种请求方法
1、promise 封装原生AJAX let request = function (url,type="GET",data="") { return new Promise((resolve,reject)=>{ var xhr = window.XMLHttpRequest ? new XMLHttpRequest() : ActiveXObject("microsoft.XMLHttp") xhr.open(type,url,tr
2020-11-12 21:42:35
902
原创 一篇文章让你彻底理解 http/https协议、常见状态码、get/post、http缓存机制
一、http/https协议先来观察这两张图,第一张访问域名http://www.12306.cn,谷歌浏览器提示不安全链接,第二张是https://kyfw.12306.cn/otn/regist/init,浏览器显示安全,为什么会这样子呢?2017年1月发布的Chrome 56浏览器开始把收集密码或信用卡数据的HTTP页面标记为“不安全”,若用户使用2017年10月推出的Chrome 62,带有输入数据的HTTP页面和所有以无痕模式浏览的HTTP页面都会被标记为“不安全”,此外,苹果公司强制所有i
2020-11-11 19:46:56
266
原创 ES6新增整理,让你完全理解ES6
ES6简介什么是ES6?ES6泛指从2015年发布的ES2015,到ES2016、ES2017、ES2018等。由于部分浏览器未完全支持ES6,所以在使用ES6的项目在放到生产环境时需要使用Babel等工具编译以兼容。ES6常用新增let、constlet 声明的变量拥有自己的块级作用域,且修复了var声明变量带来的变量提升和for循环var变量泄露,变量覆盖等问题。const 新增了定义常量arr数组解构赋值:let [a,b,c] = [1,2,3],在声明较多变量时,不用再写很
2020-11-10 17:21:54
186
原创 vue自定义指令
vue 常用指令v-if指令v-show指令v-else指令v-for指令v-bind指令v-modelv-on指令v-text指令v-html指令v-if v-else与 v-show 使用 <div id="app"> <p v-if="yes">我是yes</p> <!-- v-else要和v-if搭配使用 --> <p v-if
2020-11-09 21:11:22
360
原创 vue封装api接口
**1 为什么要将api封装起来?在没有封装API之前,我们是类似这样使用 axios 的this.$axios.post('blogArticle/frontList',parms).then((resp) => { this.blogList = resp.data, this.blogTotal = resp.total * 1})封装之后这样调用userlist(parms).then(resp => { this.bl
2020-11-01 19:30:54
1110
空空如也
URIError: Failed to decode param
2023-05-11
TA创建的收藏夹 TA关注的收藏夹
TA关注的人