在switch组件外包一层父元素,把切换事件绑定在父元素身上,但是当点击时,用取消事件捕获的办法阻止switch的触发,也就是事件并不会走到子元素,当验证通过后,再更改switch的checked值<view capture-catch:tap="switchChange"> <switch checked="{{switchChecked}}" /> </view>参考【微信小程序】switch组件怎么在切换前进行验证?
前端页面将文件分块上传。后端在最后一条时进行合并处理。最后一条需要等待前面的上传完毕再执行,因此用Promise.all() 函数处理。前端js function getRandChars(e) { e = e || 32; var t = "ABCDEFGHJKMNPQRSTWXYZabcdefhijkmnprstwxyz2345678", a = t.length, n = ""; for (i = 0; i < e; i++) n += t.charAt(Math.floor(Math.random() * a)); return n } function uploadFile(url, blob, callback) { var perFileSize = 2097152; // 2 * 1024 * 1024 var blobParts = Math.ceil(bl
使用vite搞前端,使用docker来配置运行环境配置好后无法热更新最终可以通过。需要暴露hrm服务端口(可自定义)配置 hrm: usePolling: true文件:DockerfileFROM node:18.9.1-alpine WORKDIR /usr/app/ COPY package.json . RUN npm install --quiet COPY . . CMD npm run dev EXPOSE 5173 EXPOSE 3011文件:docker-compose.ymlversion: '2' services: web: build: . command: npm run dev working_dir: /usr/app/ volumes: - /usr/app/node_modules - .:/usr/app ports: - "5173:5173" - "3011:3011"文件:vite.confi
function copy(message) { // 创建输入框元素 let oInput = document.createElement("input"); // 将想要复制的值 oInput.value = message; // 页面底部追加输入框 document.body.appendChild(oInput); // 选中输入框 oInput.select(); // 执行浏览器复制命令 document.execCommand("Copy"); alert("已复制"); }使用原生命令Copy实现参考:vue实现复制功能
有个需求,pc与mobile 两端是一个地址,因此在手机端添加检测环境一开始 检测屏幕宽度, 缺点是需要 页面 ready之后才可以判断 ,横屏时判断不准。遂查了下,用一些手机浏览器与pc端的不同点来判断。let isMobile = window.matchMedia("(any-pointer:coarse)").matches;在页面加载时执行便可判断,页面卡顿几乎无感。🥰😘😛JavaScript 侦测手机浏览器的五种方法
风里来
最后,我终于解放了我自己……