自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 React中的Hooks钩子

用于在函数组件中处理复杂的状态逻辑。它通常用于管理具有复杂状态和行为的组件,尤其是涉及到多个状态转换的情况。useReducer 接受两个参数:一个是包含状态转换逻辑的函数(reducer),另一个是初始状态。它返回一个包含当前状态和 dispatch 函数的数组。副作用是指一段和当前执行结果无关的代码,比如说要修改函数外部的某个变量,要发起一个请求有两个参数。useEffect 有两个参数第一个参数是 callback,第二个是个依赖数组,这个数组可以为空。访问 Dom 元素,

2024-10-14 15:51:02 488

原创 v-model双向绑定组件通信

给input元素绑定原生input事件,触发input事件时,进而触发update:model-value事件。

2024-10-14 15:09:18 434

原创 react生命周期函数渲染循序

挂载,当组件实例被创建并插入 DOM 中时,其生命周期调用顺序如下constructor(),static getDerivedStateFromProps(不常用),render(),componentDidMount()getDerivedStateFromProps 会在调用 render 方法之前调用,并且在初始挂载及后续更新时都会被调用。它应返回一个对象来更新 state,如果返回 null 则不更新任何内容。更新,当组件的 props 或 state 发生变化时会触发更新。组件更新的生命周

2021-12-30 16:25:20 611

原创 css实现正片叠底

mix-blend-mode: normal; //正常mix-blend-mode: multiply; //正片叠底mix-blend-mode: screen; //滤色mix-blend-mode: overlay; //叠加mix-blend-mode: darken; //变暗mix-blend-mode: lighten; //变亮mix-blend-mode: color-dodg

2021-12-28 10:46:01 4517 1

原创 js获取页面url地址

function getQueryString(key) { var reg = new RegExp("(^|&)" + key + "=([^&]*)(&|$)"); var result = window.location.search.substr(1).match(reg); return result ? decodeURIComponent(result[2]) : null;}

2021-09-10 18:30:01 929

原创 vue中request和response请求拦截器

request 请求拦截器,有token值则配置上token值axios.interceptors.request.use(config=>{ if(token && config.url != "/login"){ config.headers['Authentication'] = token } return config;},error=>{ console.log(error); Promise.reject(error

2021-08-25 10:35:41 3138

原创 小程序获取顶部高度,设备信息和时间胶囊位置信息

wx.getSystemInfoSync(),//获取设备信息 try { const res = wx.getSystemInfoSync() console.log(res.model) console.log(res.pixelRatio) console.log(res.windowWidth) console.log(res.windowHeight) console.log(res.language) console.log(res.version) cons.

2021-07-14 16:20:29 754

原创 js数组分割成多个数组

function group(data,index) { if(data && index == 0){ var data = data.splice(0,Math.floor(data.length/2)) }else { var data = data.splice(Math.floor(data.length/2)) } return data;}

2021-07-02 18:08:04 1689

原创 js对象转换字符串

var skuDetailMap = {0100000896: {createTime: "2020-02-17T03:26:23.000+0000"skuCode: "0100000896"skuParams: "{"长度":"短","面积":"小"}"updateTime: "2021-06-15T06:37:18.000+0000"}}let spu = skuDetailMap for (let key in spu){ if(s

2021-06-15 17:48:34 498

原创 js时间转换,年月日时分秒转换,时间戳转换

var newTime = new Date().getDate()//本地时间--日期var newTime = new Date().getTime()//本地时间--日期--时间戳var endTime="2021-03-03T16:00:00.000+0000"endTime=endTime.replace(/-/g,"/").replace("T"," ").substring(0,19)console.log(newTime,'当地时间') //8 "结束时间"var DateIn=n

2021-06-08 16:07:37 5347

原创 js中的forEach和map循环的区别

foreach又叫做增强for循环,相当于for循环的简化版,foreach(元素类型 元素名称:循环对象(数组、集合)){循环语句}forEach能不能跳出循环呢?可以,不过不是使用break,而是结合try catch操作,forEach中使用return无效map() 方法返回一个新数组,数组中的元素为原始数组元素调用函数处理后的值。map() 方法按照原始数组元素顺序依次处理元素。 var couponInfo=["24389","24389","24388","24120","2439

2021-06-04 18:49:54 729

原创 js数组过滤器filter

var arr0 = [ {name:'会员卡',description:"会员卡8折"}, {name:'优享卡',description:"优享卡8折"}, {name:'秒杀',description:""},]var couponInfoObject = {}couponInfo.map(name=>{ let youxiangka = arr0.filter(item=>item.name==="会员卡") if(youxiangka){ couponInf

2021-06-04 18:30:48 1188

原创 javascript中可用的编码解码函数

escape(string); unescape(string);encodeURI(string); decodeURI(string);encodeURIComponent(string); decodeURIComponent(string);

2021-06-03 17:14:05 211 1

原创 js时间转换的一些方法,时间转换天数,获取商品活动时间

// 获取两个时间相差多少天 function getTimeDaysNum(time1,time2){ if(!time1 && !time2) return ''; // 转为时间戳计算 time1 = time1?getDate(time1.replace(getRegExp('\-','g'),'/').substring(0,10)) : getDate() time2 = time2?getDate(time2.replace

2021-05-13 15:46:40 581

原创 小程序返回上一个页面刷新

A页面自定义一个函数方法 reloadOrder // 刷新页面订单列表信息 reloadOrder() { //门店订单 this.setData({ pageNum:1, list:[], //切换 isWhole:false, }); this.getList(); },B页面接受这个方法,并返回上一个页面,刷新页面 let pages = getCurrentPages(); //获取当前页面

2021-04-13 10:55:23 205

原创 vuex的使用方法

npm install vuex -s在src下创建store,文件夹下创建index.jsimport Vue from 'vue';import Vuex from 'vuex';Vue.use(Vuex);const store = new Vuex.Store({ state:{ count: 0 }, getters:{ }, mutations:{ increment (state) {

2021-03-04 17:10:46 130 1

原创 vue跳转页面传递参数的三种方法

vue中this.$router.push()路由传值和获取的两种常见方法path不能和params一起使用,否则params将无效。需要用name来指定页面。使用params传参要用name不能使用path只是大概的介绍一下,如果想看详细的参数用法可以查看我下面的文章https://blog.youkuaiyun.com/style201904/article/details/102605338第一种方法query传参this.$router.push({path:'/business',query:{w

2020-12-09 15:00:50 2981

原创 js使用mescroll下拉刷新和页面传参

引入mescroll.js <script type="text/javascript" src="./js/mescroll.m.js"></script>//插件有详细的配置参数这里我就不多介绍了//这里结构父盒子的id="mescroll"所以下面设置使用mescroll,可以随便设置var mescroll = new MeScroll("mescroll",{ up:{ callback: upCallback, //

2020-12-09 14:25:04 270

原创 vue中父子组件之间通信的方法

<!-- 父传子(props) 父组件father.vue --><template> <div> <div>father组件</div> <div>父组件要传给子组件的参数:{{msg}}</div> <!-- 1.传递:data1为动态参数msg的参数名,名字自定义,与子组件接收参数名同名 data2为静态参数的参数名,名字自定义,与子组件接收参数名同名 --> .

2020-12-08 10:12:21 172

原创 原生js实现日历本,打卡专用。

<div style="width:100%;"> <input id="txtDt" type="text" /> </div><script type="text/javascript"> (function (){ function Dt(selector) { return new Dt.fn.init(selector); } Dt.fn = Dt.prototype = {.

2020-11-20 11:37:18 501 1

原创 echarts图形的参数设置和图形大小调整,map地图的中心坐标点修改。

<body> <!-- 饼图图形 --> <div id="pie"></div> <!-- 柱状图图形 --> <div id="bar"></div> <!-- 折线图图形 --> <div id="line"></div> <!-- 柱状折线图形 --> <div id="barLine">&lt

2020-11-20 11:24:31 7194 1

原创 正则解析标题

var title = '${年份}年${系统级次}${账本}总${收支类型}结构分析' var object=[ {biaoti:'收支类型',timu:'收入'}, {biaoti:'账本',timu:'一般公共预算'}, {biaoti:'系统级次',timu:'全县'}, {biaoti:'年份',timu:2020}, {biaoti:'科目级次',timu:1}, {biaoti:'数据类型',timu:'预算编制'}, ] for(var i=0;i<obj

2020-11-20 11:10:12 181

原创 h5使用jq实现登录记住账号密码

<div> <div class="login"> <input type="text" placeholder="账号" class="user"> <div style="height: 1px;background: #e4e4e4;float: left;margin: .2rem 0 .5rem;width: 100%"></div> <inp.

2020-11-20 11:04:51 788

原创 js判断是否是微信浏览器,和否是IE浏览器

// 判断是否是微信浏览器 函数封装function isWeixin(){ var ua = window.navigator.userAgent.toLowerCase(); if(ua.match(/MicroMessenger/i) == 'micromessenger'){ return true; }else{ return false; }} var userAgent = navigator.userAgent; /

2020-11-05 10:03:47 741

原创 js实现存储cookie获取cookie封装

//存储cookie 不设置时间为永久存储cookiefunction setCookie(cname, cvalue) { // var d = new Date(); // d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000)); // var expires = "expires=" + d.toUTCString(); document.cookie = cname + "=" + cvalue + "; ";

2020-11-05 09:57:44 205

原创 js正则验证手机号,身份证号,邮箱。

//校验手机号码function phoneRuler(phone){ let reg = /^1[3|4|5|6|7|8|9][0-9]{9}$/; return reg.test(phone)}console.log(phoneRuler('13587264753')) //trueconsole.log(phoneRuler('1358726475')) //false// 校验身份证号码function isCardNo(card) { // 身份证号码为15位或者

2020-11-05 09:52:27 562

原创 jquery实现数据三级联动

<style> *{ margin: 0;padding: 0;} table {border-spacing: 0;border-collapse: collapse;} td { display: table-cell;vertical-align: inherit; } th {display: table-cell;vertical-align: inherit; font-weight: bold;height: 50px;} tr{height

2020-07-13 09:48:32 589 1

原创 js新建一个数组和对象把数据已字符串形式存入本地缓存

var arr = []; //新建一个数组 var objA= new Object(); //新建一个对象 objectA(); function objectA() { var tabitemhtml=''; objectB(msg[0].id) //传入数据的第一个id console.log(msg[0].id) for(var i=0;i<msg.length;i++){ ...

2020-07-13 09:43:55 1503

原创 js获取url链接参数的一些方法

//方法一function getQueryString(key) { var reg = new RegExp("(^|&)" + key + "=([^&]*)(&|$)"); var result = window.location.search.substr(1).match(reg); return result ? decodeURIComponent(result[2]) : null;}//方法二function GetRequest(key)

2020-07-07 17:47:36 353

原创 javascript自定义rem还原设计稿

//根据设计稿750宽度(function (doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize', recalc = function () { var clientWidth = docEl.clientWidth; if (!clientWidth) return;

2020-07-07 17:37:41 187

原创 vue登录请求拦截响应,携带token

main.js//引入axiosVue.prototype.$axios = axios;axios.defaults.baseURL='http://127.0.0.1:8080/';axios.interceptors.request.use((config) => { config.headers.token = localStorage.getItem('token');; return config;});axios.interceptors.response.use((c

2020-07-07 17:20:02 1172

原创 js正则匹配标题

//自定义一个标题var title = '${年份}年${系统级次}${账本}总${收支类型}结构分析';//模拟数据 var object=[ {biaoti:'收支类型',timu:'收入'}, {biaoti:'账本',timu:'一般公共预算'}, {biaoti:'系统级次',timu:'全县'}, {biaoti:'年份',timu:2020}, {biaoti:'科目级次',timu:1}, {biaoti:'数据类型',timu:'预算编制'}, ] fo

2020-07-07 17:05:13 580

原创 启动node本地服务器

启动node本地服务器http-servernpm install -g express-generatorcnpm i nodemon -gexpress dome //项目名字cnpm inode app //启动项目

2020-05-23 22:01:39 433

原创 判断设备类型android和iphone

$(function () { // 判断设备类型 var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; //android终端 var isiOS = !!u.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //ios终端 if (isiOS == true) { addHeight();

2020-05-22 16:18:56 452

原创 H5页面调用原生方法返回

var userAgent = navigator.userAgent.toLowerCase();// 调用原生方法返回function back() { if (equipment('iphone')) { naviBack({ isRefresh: '0', callBack: 'isRefresh()' }); } else if (equipment('ipad')) { naviBack({ isRefresh:

2020-05-22 16:11:24 2566

原创 tab选项卡联动swiper轮播图

function tabs(obj, swiperObj, className, index) { var tabSwiper = new Swiper(swiperObj, { initialSlide: index, // 设定初始化时slide的索引 speed: 500, //滑动速度,单位ms // autoHeight: true, //高度随内容变化 onSlideChangeStart: function() {

2020-05-22 14:04:53 2063

原创 swiper轮播图

<!-- 轮播图 --> <div class="swiper-container swiper1"> <div class="swiper-wrapper"> <div class="swiper-slide"> <img src="./images/0.jpg" alt=""> </div> <div class="swiper-slide"> .

2020-05-22 14:02:33 225

原创 js实现日历

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Doc

2020-05-22 13:54:14 325

原创 js把时间转换为时间戳

var timer = Date.now();console.log(timer);var timestamp1 = Date.parse(new Date()); var timestamp2 = (new Date()).valueOf();var timestamp3 = new Date().getTime();console.log(timestamp1);console.log(timestamp2);console.log(timestamp3);var strtime =...

2020-05-22 13:50:04 3371

原创 jq实现tab选项卡

<div class="tab"> <ul class="tab-title"> <li class="this">网站设置</li> <li>用户管理</li> <li>权限分配</li> <li>商品管理</li> <li>订单管理</li>

2020-05-22 13:47:04 449

空空如也

空空如也

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

TA关注的人

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