- 博客(23)
- 收藏
- 关注
原创 scale实现页面缩放自适应
使用注意事项代码中的所有的宽高是指正常视图下的宽高,我的项目是大屏,所以正常视图下是 1920 * 1080,普通 PC 项目,那应该是 1920 * 937由于缩放是对 #app 进行的操作,很多UI框架的全局弹窗无效,因为弹窗不包含在 #app 元素中,可查看框架是否有提供API指定弹窗位置,Element-ui 是有的/** * 需要有一个 #app 元素,并有如下样式 * width: 1920px; * height: 1080px; * position: absolute;
2022-04-29 17:25:01
2372
原创 uniapp 含 web-view 页面如何返回
解决思路:进入页面的时候获取初始页面历史记录数量,返回的时候获取当前页面历史记录数量,两者数量差即为页面返回层数(uniapp 的 getCurrentPages 获取的页面栈跟浏览器实际历史记录是不一致的)。onLoad() { this.initPageNum = 0 // #ifdef H5 this.initPageNum = window.history.length // #endif},methods: { back() { let currentPageNum =
2022-02-09 16:21:22
2742
1
原创 uniapp 点击复制文本
说明uni-app复制插件 兼容安卓 、ios 和 大部分小程序,使用方便,上手简单。使用步骤点击下载插件 uni-app 复制插件引入插件import uniCopy from '@/js_sdk/xb-copy/uni-copy.js'/** copy 是要复制的文本内容 tip 复制成功后的提示语*/ export default function (copy, tips) { uniCopy({ content:copy, success:(re
2021-10-14 16:17:46
1382
原创 vue 跨域代理
在 vue.config.js 文件中,添加以下代码module.exports = { devServer: { proxy: { '/api': { // 需要拦截的接口,如果接口本来就已经使用 api 前缀,这里可以使用别的名字 target: 'http://www.example.org', // 服务器地址 changeOrigin: true, p
2021-09-28 15:27:15
112
原创 uniapp APP 老年人字体放大方案
实现思路借助 postcss-px-to-viewport 插件,将项目中的所有 font-size 属性的单位换成 rem,通过控制根字体大小,实现统一字体大小控制。实现步骤一、在项目根目录下直接创建 postcss.config.js ,并写入以下代码postcss-px-to-viewport 配置项参考链接// postcss.config.jsconst path = require('path')module.exports = { parser: 'postcss-comm
2021-08-31 13:47:29
3918
原创 uniapp APP热更新
methods: { checkVersion() { // 获取本地版本号跟服务器上的版本比较,检查是否需要更新 plus.runtime.getProperty(plus.runtime.appid, (info) => { this.$api.checkVersion(parseFloat(info.versionCode)).then(res => { if (res.code == 200 && res.result.upda
2021-08-13 17:19:47
998
原创 uniapp 打包 APP 上架相关问题
1、您必须上传12.9时 iPad Pro 显示器的截图。打包IOS时如果选择了支持 ipad ,那么上传时,APP展示图也需要包含在ipad运行时的截图。2、您的APP含有NSUserTrackingUsageDescription,表示该APP可能会要求使用者追踪权限,若要提交以供审查,请更新您的App隐私权回复,并注明从这个APP收集的资料会用于追踪用途;或者更新您的APP二进位档,然后上传新的建置版本。找到 IDFA 标识,然后取消勾选。NSUserTrackingUsageDescr
2021-07-22 09:55:18
2240
原创 实现 websocket 带心跳重连
import { getWebsocketUrl } from '@/api/ajax'export default function (callback) { const path = getWebsocketUrl(); const jspCode = 100; let websocket; // 避免重复连接 let lockReconnect = false, tt; // 调用 createWebSocket(); /** * websocket启动
2021-06-08 10:00:34
134
原创 微信小程序配置多环境
版本要求 2.2.2以上API:getAccountInfoSync (获取应用信息)const accountInfo = wx.getAccountInfoSync();const env = accountInfo.miniProgram.envVersionlet baseUrl = "xxx";if (env == 'release') { baseUrl = "xxx" // 正式版} else if (env == 'trial') { baseUrl = "xxx";
2021-06-04 14:45:56
1264
原创 vue-cli 多环境配置
1、创建环境变量文件在 ./src 同级目录下创建 环境变量文件 .env.dev ,文件名称格式 .env.* , * 为环境名称。.env.dev 文件内容// 变量名必须以 VUE_APP 开头,否则无法获取到VUE_APP_ENV=dev2、命令行引用相关 环境文件在 package.json 文件中配置相关命令,使用 --mode 指定环境名称"scripts": { "dev": "vue-cli-service serve --mode dev",}3、获取配置的环
2021-06-04 09:47:47
316
原创 vue-cli 项目 循环读取文件夹内所有文件
require.context实现动态读取文件内容,主要依靠 webpack 的 require.context 方法,require.context 方法有三个参数:directory {String} - 读取文件的路径useSubdirectories {Boolean} - 是否遍历文件的子目录regExp {RegExp} - 匹配文件的正则语法:/** * require.context * @param {String} directory 读取文件的路径 * @par
2021-06-04 09:33:54
5086
1
原创 flutter shared_preferences本地存储
1、引入依赖在 pubspec.yaml 中引入依赖并 pub getshared_preferences: ^0.4.12、基本使用SharedPreferences prefs = await SharedPreferences.getInstance();String name = 'xxx';// 保存 String 类型,还可以保存 int、double、bool 类型await prefs.setString("name", name); // 获取String valu
2021-05-27 10:03:40
202
原创 PC大屏幕rem自适应
1、先安装 px 转 rem 插件npm install postcss-px2rem px2rem-loader --save2、新建 rem.js 等比适配文件// rem等比适配配置文件// 基准大小const baseSize = 16// 设置 rem 函数function setRem () { // 当前页面宽度相对于 1920宽的缩放比例,可根据自己需要修改。 // 设计师给我的是 1920 * 1080 设计图,这里根据需要更改 const scaleX = d
2021-05-11 16:33:37
1518
2
原创 vue3 响应式原理
vue3 的响应式原来比较容易理解,通过 Proxy 对对象进行代理,在 get 收集回调,在 set 中触发回调。function observable(obj) { let handle = { get(target, key, receiver) { let result = Reflect.get(target, key, receiver) track(target, key, receiver) return result },
2021-04-16 16:07:45
126
原创 canvas AI智能识别画框
<template> <div class="app-container calendar-list-container"> <canvas id="canvas" @mousedown="handleMousedown" @mousemove="handleMousemove"></canvas> <div><el-button @click="init">清空画布</el-button>
2021-03-11 16:11:41
662
原创 el-time-picker 时间段交叉判断
const timeArr = [['10:00', '11:00'], ['12:00', '13:00'], ['10:30', '12:30']]const isStartThanEnd = timeArr.find(item => { return item[0] > item[1]})if (isStartThanEnd) { Error('开始时间不能大于结束时间!');}// 只有一条配置,不存在交叉的情况if (timeArr.length == 1) {
2021-03-09 17:14:49
720
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人