自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(67)
  • 收藏
  • 关注

原创 webpack4从0搭建项目

webpack的一些介绍webpack的基本能力:处理依赖、模块化、打包模块化代码转换 ES6 =》ES5;Less,Sass =》 CSS文件优化压缩文件体积,合并文件代码分割懒加载模块合并热更新处理依赖webpack的工作原理简单的说就是分析代码,找到“require”、“exports”、“define”等关键词,并替换成对应模块的引用。在一个配置文件中,...

2019-12-31 17:08:47 247 1

原创 【小程序】小程序的eventBus

小程序eventBus

2024-08-21 16:54:56 479

原创 【uniapp】图片合成并导入base64

合成图片

2024-08-21 16:02:55 376

原创 小程序人脸分析

人脸识别

2024-06-24 15:36:21 756

原创 元素选中css小技巧

场景。

2024-01-30 16:20:57 398

原创 【uniapp】签名组件,兼容vue2vue3

vue3使用 由于是两个项目,操作也是不一样,所以获取图片的逻辑也有点不一样。vue2 使用方法,具体的可以根据业务自行修改。

2023-11-08 10:45:18 845

原创 【uniapp】swiper组件touch事件和click兼容问题

touch事件和click兼容问题

2023-11-07 19:12:26 963

原创 【uniapp】短信验证码输入框

uniapp短信验证码输入框组件

2023-10-26 18:56:02 1122

原创 uniappAPP和webview互相通讯,webview调用APP原生方法

uniappAPP和webview互相通讯,webview调用APP原生方法

2023-07-31 16:20:14 1840 4

原创 uniapp自定义消息语音

uniapp后台配置因为2.0只支持uniapp自己的后台发送消息,所以要自己的后台发送消息只能用1.0插件地址和代码插件地址:link} else {} , 500) }

2023-07-31 15:55:53 1710

原创 uniapp读取本地语音文件

uniapp读取本地文件

2023-07-31 15:46:22 1142

原创 vue大屏数据展示屏幕兼容方案

vue大屏数据展示屏幕兼容方案

2023-03-23 10:45:52 358 1

原创 uniapp移动端树结构封装

uniapp移动端树结构,支持单选和多选

2023-02-17 12:04:07 1120 5

原创 搜索关键字高亮,兼容小程序h5

搜索关键字高亮,兼容小程序h5

2023-02-17 12:01:37 230

原创 cocos 3.x 2D角色键盘移动

cocos 3.x 2D角色键盘移动。

2022-11-15 16:05:27 609

原创 css样式顶掉important和important的使用注意点

css样式如何顶掉important和important的使用注意点

2022-10-28 15:39:41 2136

原创 小程序滚动到指定元素高度

小程序滚动到指定元素高度

2022-10-20 14:39:52 1065

原创 js批量下载文件,导出成zip

js批量下载文件

2022-08-12 10:11:07 3163

原创 js判断滚动条宽度

js判断滚动条宽度

2022-07-11 16:05:09 320

原创 解决unable to resolve dependency tree报错

解决npm报错 unable to resolve dependency tree

2022-07-01 16:08:36 6006

原创 小程序中实时将less编译成wxss

小程序中实时将less编译成wxss平时写小程序用wxss来写样式很不方便,可以试着用lessnpm或者yarn全局安装wxss-clinpm install -g wxss-cli运行wxss-cli命令(weuiTest为小程序目录)wxss ./weuiTest实时监听weuiTest目录下的.css或者.less文件,转化为.wxss文件.css或者.less文件可使用less语法less转wxss文件不可逆使用 PowerShell...

2022-03-09 14:12:40 269

原创 git文件大小写导致的bug

一直用git做项目文件管理,本地测试好好的,提交到gitlab就出问题,一直显示未找到文件,查了很久发现某一次修改了一个文件名称大小写,git不能检测到修改,就提交失败。。解决办法先查看 git 的设置:git config --get core.ignorecase看下是否等于false,如果是true就改成false更改设置解决:git config core.ignorecase false但平时开发还是要注意文件名称,避免出现这种问题...

2021-09-10 11:53:09 382

原创 mac的鼠标滚动方向和触摸板方向,一个插件搞定

新人刚用mac,鼠标滚轮方向是反的,如果设置鼠标滚动方向,触摸板也会相应的修改,更加别扭。强迫症都犯了所以找了一个插件查阅资料,发现了Scroll Reverser,可以完美解决此问题_官网地址:https://pilotmoon.com/scrollreverser/安装后设置下,完美解决...

2021-09-01 10:51:10 7440 3

原创 多个小程序一键上传,脱离小程序开发工具

声明此代码仅供技术交流学习,擅自用于其他,一切后果与本人无关几百个同样代码的小程序,如果通过小程序开发工具提交代码,那是真的痛苦,看了官方文档,官方提供了相应的工具 ci,看了下感觉非常简单,必须立马搞起来,做成几百个一键上传整体思路几百个小程序关闭白名单和拿到密钥,这个文档上写的很清楚因为每套代码相同,只有project.config.json里面的appid和projectname是不一样的,所以每次上传的时候都要修改这个json文件然后循环执行上传项目结构项目结构还是很简单的

2021-06-23 15:22:20 788 3

原创 批量管理上百个小程序经验

声明此代码仅供技术交流学习,擅自用于其他,一切后果与本人无关由于公司业务需要,需要管理几百个小程序,刚开始不多的时候还可以通过手动扫码登录,但随着时间积累,小程序越来越多,管理起来就很痛苦了,经过大概1周的开发,利用node的爬虫,解决了这个问题,整体流程先建立一个可视化界面,来管理几百个小程序的账号和密码一次性登录50个小程序(因为一部手机只能绑定50个小程序管理员),并获取每个小程序的token和cookie,存在redis每次操作相应api(需要爬微信接口),都可以直接通过token和

2021-06-23 15:03:21 3439 1

原创 js深拷贝、浅拷贝

无论是面试还是平时开发,经常遇到数据拷贝问题,这边就做一个总结。为什么会出现数据拷贝的问题,首先要了解js的数据类型,基本数据类型和引用数据类型基本类型number,string,boolean,null,undefined,symbol常见的如数字、字符串、布尔值等都属于基本类型,这类数据类型在内存中占据固定大小,保存在栈内存中。引用类型array,object,function我们常用的数组、对象、函数都属于引用类型,保存在堆内存中,而堆内存中存储的是目标的存储地址。两种类型的区别在

2021-06-21 17:39:11 98

原创 vue2和vue3的v-model的区别

v-model你可以用 v-model 指令在表单<input>、<textarea> 及 <select> 元素上创建双向数据绑定。它会根据控件类型自动选取正确的方法来更新元素。尽管有些神奇,但 v-model 本质上不过是语法糖。它负责监听用户的输入事件以更新数据,并对一些极端场景进行一些特殊处理vue2的v-model原理还是传递一个value参数和绑定了一个input事件<template> <div> <.

2021-05-08 15:26:18 1190

原创 手写简易版promise

promise的实现原理 function myPromise(fn) { this.cbs = []; const resolve = (value) => { setTimeout(() => { this.data = value; this.cbs.forEach((cb) => cb(value)); }) } fn(resolve); } m

2021-04-25 15:26:25 91

原创 javascript基础-原型、原型链、继承

原型、原型链

2021-03-31 15:52:59 141

原创 vue2和vue3的全局组件封装

vue2的组件封装vue2封装组件是基于Vue.extend的封装新建index.js和toast.vue文件index.js入口文件 import toastComponent from './toast.vue'import Vue from 'vue'let instance;const toast = function(text) { if(instance) { instance.text = text; instance.show() retur.

2021-03-12 10:34:51 834

原创 vue3的provide与inject

在组合式 API 中使用 provide/inject。两者都只能在当前活动实例的 setup() 期间调用使用 Providelet name = ref('name')let info = reactive({ age:18})provide("name", name);provide("info", info);//也可以向子组件传方法let getInfo = ()=>{console.log('getInfo')}provide("getInfo", getInfo

2021-03-03 11:26:31 485

原创 vue2和vue3组件传参双向绑定

众所周知,vue组件传参都是单向数据源,但开发中每次通过$emit传参给父组件并不是很方便,vue2.3.0之后新增了修饰符.sync可以快速解决这个问题vue2 传参双向绑定父组件<Child :id="id"></Child>子组件<template> <input type="text" v-model="ids"></template><script>export default { props:

2021-02-22 14:37:52 529 1

原创 谷歌游览器插件开发

平时会自己写一些脚本工具放在公司服务器上,但每次使用需要打开网址进入页面才可以使用,研究了以后决定用谷歌游览器插件的形式来开发。插件结构index.html<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> &l

2021-02-20 15:03:48 137

原创 react路由-学习

React Router 中的组件主要分为三类:路由器,例如 BrowserRouter 和 HashRouter路由匹配器,例如 Route 和 Switch导航,例如 Link,NavLink 和 Redirect在 Web 应用程序中使用的所有组件建议都从 react-router-dom 导入1、安装路由包npm i react-router-dom --save2、路由组件路由组件分为两种:BrowserRouter(history 模式) 和 HashRouter(hash

2021-01-20 13:24:31 203 1

原创 react路由懒加载和路由缓存

之前用vue写的项目比较多,刚用react还是很不习惯,官网只有最基础的api,很多东西都要自己去研究,开始还是花费了一些力气,但还是最终还原了vue路由的所有功能,路由懒加载和路由缓存功能react路由懒加载,使用react-loadable先安装 npm i react-loadable --save创建loadable.js文件import React from "react";import { Spin } from 'antd';import Loadable from "rea

2021-01-14 11:59:37 1067 1

原创 七牛文件上传js和node

公司经常会用到七牛上传,用工具和网页上传总是很慢需要找对应路径和刷新cdn,看到官方有js的api就自己做了个批量上传和刷新cdn功能获取七牛token,必须服务端,不能前端获取,所以自己用node写先安装cnpm i qiniu --save获取token代码 let qiniu = require('qiniu') let config = require('./config.js') let key="img/abc.png" //文件线上的地址 比如 img/abc.pn

2020-12-22 10:12:39 203

原创 解决autoprefixer插件兼容性问题

平时用autoprefixer插件的时候会遇到-webkit-box-orient 不生效的的问题,网上搜了一些方法,总结一下 /* autoprefixer: off */ -webkit-box-orient: vertical; /* autoprefixer: on */我试了一下,我这边因为用了postcss-px-to-viewport插件,和autoprefixer也不怎么兼容 版本只能8.0.0,所以这个方法不行,会报错 /*! autoprefixer: ignor.

2020-12-19 17:23:33 1011 1

原创 css实现三角形加文字

今天在写CSS的时候发现了一个问题,按照平时的写法肯定是用一张图片来做,但需求是这个地方是动态的2个字,总不能后台传图片过来吧,所以自己思索了下,还是用CSS来实现实现也比较简单<div class="product_tip"> <div class="product_tip_bg"></div> <p>免费</p></div>CSS部分,尺寸方便再按照设计图调整.product_tip{ position:

2020-11-12 17:05:52 3659 4

原创 记一次axios和nodejs之间的跨域问题

之前经常用nodejs写一些本地脚本,由于维护不方便,所以想在公司服务器上加一些nodejs配合experss写的脚本,刚开始安装环境,放代码都一切正常,可联调的时候一直出现跨域问题问题乍一看很像跨域,可网上的一些方法我都试了,甚至nginx也各种修改都不行,后来用了很多方法最后发现问题不在后端,在前端原因前端用的vue和axios,之前在公司服务器上,所以都加上了配置里面的withCredentials属性,这个属性的意思是开启withCredentials后,服务器才能拿到你的coo

2020-11-06 16:38:49 829

原创 vue组件的二次封装

用iview、elementUi做项目的时候,经常会遇到组件功能不能满足业务需求的时候,这时候需要在原有的组件上进行二次封装业务需求iview的下拉菜单多选是这样子的iview是没有全选功能的,现在要加一个全选,反选,取消实现方法新建selects.vuetemplate部分核心是v-bind="$attrs" 继承组件的所有属性并且赋值,还有v-slot组件插槽<Select v-model="list" :max-tag-count="2" v-bind="$attrs"

2020-10-31 17:53:34 4305

空空如也

空空如也

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

TA关注的人

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