自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 资源 (1)
  • 收藏
  • 关注

原创 常用el-form表单元素校验

/** * * 校验手机号 * * **/export const checkMobile = (rule, value, callback) => { if (value) { if (!/^[1][3,4,5,6,7,8,9][0-9]{9}$/.test(value)) { // if (!/^1[3456789]\d{9}$/.test(value)) { return callback(new Error('请输入正确手机号')) } ..

2022-05-29 13:40:08 544 1

原创 常用vue指令

import Vue from 'vue'import './directive.dialogdrag.js'// 去空格const validform = { filterSpace: Vue.directive('filterSpace', { update: function (el, { value, modifiers }, vnode) { try { value = value + '' let

2022-05-29 13:27:59 102

原创 package-lock.json文件的作用

npm5以前,没有package-lock.json这个文件npm5以后才加入这个文件的当安装包的时候,npm都会生成或者更新package-lock.json这个文件npm5以后的版本安装包不需要加–save参数,它会自动保存依赖信息当安装包的时候,会自动创建或者更新package-lock.json这个文件package-lock.json这个文件会自动保存node_modules中所包含的信息(版本,下载地址)这样的话重新npm install的时候速度就可以提升从文件来看,又一

2020-10-16 11:18:58 590

原创 exports和module.exports的区别

每个模块中都有一个module对象module对象中有一个exports对象我们可以把需要导出的成员都挂载到module.exports接口对象中也就是:"module.exports.xxx=xxx"的方式但是每次都"module.exports.xxx=xxx"很麻烦,点的太多了所以Node为了方便,同时在每个模块中都提供了一个成员叫:“exports”"exports===module.exports"结果为true所以对于:“module.exports.xxx=xxx"的方式,完全可

2020-10-13 11:56:26 79

原创 重定向301和302的区别

301:永久重定向,浏览器会记住a.com重定向到b.coma浏览器不会请求a了直接跳到b302:临时重定向,浏览器不会记住a.com重定向到b.coma.com还会请求aa告诉浏览器你往b

2020-10-12 17:39:53 171

原创 navigator.geolocation.getCurrentPosition在http下部分浏览器定位失败

navigator.geolocation.getCurrentPosition存在兼容性,在http下部分浏览器定位失败,把http换成https就可以了

2020-04-09 17:15:29 3130

原创 安卓webview内嵌h5页面,img展示的图片被左旋转90°

问题描述和分析:目前H5的图片展示在IOS是正常的在Android上展示会出现旋转90度的情况查找资料之后 发现是这样的问题导致的:在IOS那边拍照上传照片之后 默认会把图片旋转了90度IOS的浏览器内核去处理照片的时候 会自动检测当前图片的Exif信息 的到角度信息 去自动旋转处理Android某些的浏览器内核不会去处理图片的角度信息所以导致了了H5上的图片在Android某些机型...

2020-03-02 16:21:06 2092

原创 es6学习笔记

1.Math.abs(x):返回一个数的绝对值,x必须是整数2.Math.trunc(x):去除一个数的小数部分,返回整数部分,不会四舍五入console.log(Math.trunc(5.1))//5console.log(Math.trunc(5.8))//5console.log(Math.trunc(-5.1))//5console.log(Math.trunc(-5.8))//...

2019-12-30 18:58:05 77

原创 微信内置浏览器无法打开APP下载链接的解决方案

最近遇到一个问题,app用户邀请好友,分享到微信好友,但是微信好友打不开对应的app下载链接。然后ui给我做了个图,引导用户点击浏览器右上角,在外部浏览器中打开app下载页,如下图:但是我又遇到问题,我以为微信官方提供了对应的js-sdk可以指定在微信内置浏览器中点击右上角浏览器,跳转到指定链接的页面。但是找了半天没找到,点击在浏览器中打开又在外部浏览器中打开了当前的引导页,这肯定是有问题的,最...

2019-10-08 11:52:27 2278

原创 mpvue支持v-html解析html

mpvue最新版本已经支持了用v-html来解析html,官方文档有问题

2019-09-19 14:57:23 1331

原创 比较vue中Runtime Only和Runtime+Compiler

在使用vue初始化一个项目的时候,我们会看到提示:可以看到有两种版本的vue:Runtime Only 版本 和 Runtime+Compiler 版本Runtime Only:1.我们在使用 Runtime Only 版本的 Vue.js 的时候,通常需要借助如 webpack 的 vue-loader 工具把 .vue 文件编译成 JavaScript,因为是在编译阶段做的,所以它只包...

2019-08-22 10:09:03 320

原创 vue移动端,在双击网页的时候,网页会放大,index.html中加了viewport也没用

解决方案是在vue项目中使用fastclick安装npm install fastclick -S在main.js中引入,并绑定到body。import FastClick from ‘fastclick’FastClick.attach(document.body);

2019-08-19 14:11:42 1249 1

原创 微信支付报错“网络环境未能通过安全验证,请稍后再试!”

这个问题的原因是,商户侧统一下单传的终端IP(spbill_create_ip)与用户实际调起支付时微信侧检测到的终端IP不一致导致的,这个问题一般是商户在统一下单时没有传递正确的终端IP到spbill_create_ip导致,详细可参见客户端ip获取指引统一下单与调起支付时的网络有变动,如统一下单时是WIFI网络,下单成功后切换成4G网络再调起支付,这样可能会引发我们的正常拦截,请保持...

2019-08-07 17:38:58 2807

原创 vue移动端浏览器项目,调用支付宝支付

浏览器调用支付宝支付,只需要前端这边,提交后台返回的表单即可,并且提供一个支付完成后的回调地址给后台即可,接口那边返回的表单格式一般为:<form name="punchout_form" method="post" action="https://openapi.alipay.com/gateway.do?charset=UTF-8&method=alipay.trade.wap...

2019-08-02 15:00:57 4475

原创 vue移动端浏览器项目,微信内置浏览器中调用微信支付

微信内置浏览器中调用微信支付,前提需获取微信签名等信息,然后通过wx.config配置签名等信息,代码示例如下: wxPayInside (wxData) { // 微信内部浏览器 let that = this that.wxconfig(wxData) wx.ready(function () { // config信息验证后会执行read...

2019-08-02 14:53:47 1759 1

原创 vue移动端浏览器项目,微信外调用微信支付

在浏览器中打开后台返回的mwebUrl,后面可通过redirect_url字段,指定支付完成的回调页面(成功和失败都会跳此页面),可参考微信支付文档:https://pay.weixin.qq.com/wiki/doc/api/H5.php?chapter=15_4...

2019-08-02 14:49:45 2118

原创 百度地图在微信内置浏览器中,有时候会定位失败

在用vue开发移动端网页的时候,在微信以外的浏览器中使用百度地图定位,都能定位成功,但是在微信内置的浏览器打开网页的时候,有时候会定位失败,解决方式是在定位失败的回调中,再次调用百度地图api地图定位,一般第二次调用定位的时候,就能定位成功...

2019-08-02 14:17:06 3710

原创 vue滑动自定义弹窗底部的页面也一起跟着滑动的问题

vue滑动自定义弹窗底部的页面也一起跟着滑动的问题在蒙层所在div上加@touchmove.prevent,例如:

2019-08-02 14:04:52 1218

原创 better-scroll实现横向滚动列表

{{item.goodsName}} ¥{{item.secondKillStartPrice / 100}} 赚{{item.referencePrice / 100}...

2019-04-30 17:04:38 3260

原创 vue获取验证码倒计时指令

import Vue from ‘vue’// 获取验证码倒计时Vue.directive(‘timer’, {bind : function (el, binding) {let tel.addEventListener(“click”, function () {if (el.dataset.validate===‘true’) returnlet s = binding.arg...

2019-04-26 16:07:28 151

原创 菜划算h5项目开发经验记录1

购物车选择商品使用的是elementui的el-checkbox-group和el-checkbox组件,点击这一整行的时候,右边的选择框也会被选中,可以在左边元素上加上@click.prevent取消事件冒泡就ok了...

2019-04-19 11:31:15 342

原创 git提交代码到本地仓库和github

git init 初始化git status 查看状态git add 文件名称(添加到等待区)git commit -m “注释信息支持中文” (将等待区的所有文件提交到本地仓库)git log 查看日志(提交记录)git checkout 文件名称 (下载代码)git show 版本号 (查看版本)rm 文件名 (删除本地文件)git rm 文件名 (删除等待区域文件)分支:...

2019-04-14 18:02:06 390

原创 2019年初面试题汇总

1.for in和for of有什么区别概念:(1)for…in 语句用于遍历数组或者对象的属性(2)for…of 语句创建一个循环来迭代可迭代的对象。在 ES6 中引入的 for…of 循环,以替代 for…in 和 forEach() ,并支持新的迭代协议。for…of 允许你遍历 Arrays(数组), Strings(字符串), Maps(映射), Sets(集合)等可迭代的数据结构...

2019-04-01 21:39:33 151

原创 webpack打包配置,在使用extract-text-webpack-plugin插件分离js和css过程中报错

webpack (node:18842) DeprecationWarning: Tapable.plugin is deprecated. Use new API on .hooks instead /Users/wuqiaohong/Documents/webpackDemo/node_modules/webpack/lib/Chunk.js:849 throw...

2019-03-06 10:22:31 566

微信小程序开发 上传图片或录音文件到oss

此文件是对微信小程序,上传图片或者录音文件到阿里云oss代码的封装个, 1上传图片引用示例 wx.chooseImage({ count: 3, // 默认最多一次选择9张图 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有 sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有 success: function (res) { for (let i = 0; i < res.tempFilePaths.length; i++) { //显示消息提示框 wx.showLoading({ title: '上传中' + (i + 1) + '/' + res.tempFilePaths.length, mask: true }) //上传图片,“report/”为图片存放在oss上文件目录可自行修改 app.uploadFile&#40;'img',res.tempFilePaths[i], 'oneHour(v3.0&#41;/otherImg/', function (result) { if (that.data.uploadImgs.length == 3) return let imgs = that.data.uploadImgs imgs.push(result) that.setData({ uploadImgs: imgs }) wx.hideLoading(); }, function (result) { app.pop.toast('图片上传失败') wx.hideLoading() } ) } } }) 2.上传录音示例: app.uploadFile&#40;'voice',tempFilePath, 'oneHour(v3.0&#41;/otherImg/', function (res) { console.log('上传成功') console.log(res) }, function (err) { console.log('上传失败!') app.pop.toast(err) } )

2019-02-21

空空如也

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

TA关注的人

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