自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

青红造了个大白之成长记

网络 / 前端 / 后端 / 数据库 / 纸上得来终觉浅~

  • 博客(194)
  • 收藏
  • 关注

原创 My Blog

https://lazytraveller.github.io/vuepress-fe-note/

2021-09-26 17:15:03 488

原创 根据请求响应的状态码做判断,给予开发者错误提示:responseCode

根据response来判断错误,获取错误信息提示。//@ts-check/// <reference path="../types.d.ts" />export const ERROR_NO_TOKEN_INFO = 10086;export const ERROR_PASSWD_DIFF = 20488;/** * @param {{code: number, ...

2019-06-14 12:19:16 4283

原创 dva+antd+react项目,在antd pro的脚手架的基础上实现订单的增删改查

效果图:该实例是在antd pro 的项目环境下修改实现:https://pro.ant.design/docs/getting-started-cn添加订单页面:订单列表页面:antd pro这个脚手架是使用分层架构,来层层实现数据传递,pages存放页面,从页面获取数据传递到models层,然后再models中调用services的异步请求接口数...

2019-06-09 12:46:26 4674

原创 学生信息管理系统:SSM框架实现学生信息的增删改查

一、项目概述:该项目主要实现对学生信息的管理,通过学生信息管理系统能够进行学生信息的增加、查看,查询,删除等功能,实现学生管理工作的系统化和自动化。该项目已经上传到github了,想看源码请移步:https://github.com/LazyTraveller/Student-Information-Management-System (内含数据库脚本)百度网盘:链接:https:...

2019-01-04 13:10:42 50583 101

原创 javaweb:会话管理和保存会话数据的两种技术(Cookie、Session)

 会话:                           •会话可简单理解为:用户开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话。会话过程中要解决的一些问题?•每个用户与服务器进行交互的过程中,各自会有一些数据,程序要想办法保存每个用户的数据。•例如:用户点击超链接通过一个servlet购买了一个商品,程序应该保存用户购买...

2018-11-18 11:52:11 7175

原创 数据结构编程实践(七)创建哈夫曼树、生成哈夫曼编码、完成图片的压缩与解压缩

一、对图片的压缩与解压缩,涉及以下内容:1.文件读写2.创建Huffman树3.生成Huffman编码4.压缩图片文件5 .  解压缩图片文件 二、将项目分成三个小任务,下一任务是在上一任务的基础上完成:1.任务一:统计权值、创建Huffman树2.任务二:生成Huffman编码、保存压缩文件3.任务三:解压压缩文件,恢复原文件下面开始完整的步骤:三、统计权值、生成Huffman树1.Huffma...

2018-07-11 15:30:18 15704 11

原创 访问控制列表--扩展ACL、命名的ACL

2.1 实验目的(1)理解扩展ACL和标准ACL的区别(2)掌握扩展ACL的配置和应用(3)熟悉扩展ACL的调试2.2 实验原理1.扩展ACL配置命令为了更加精确地控制流量过滤,我们可以使用编号在 100 到 199 之间以及 2000 到 2699 之间的扩展 ACL(最多可使用 800 个扩展 ACL)。扩展 ACL 比标准 ACL 更常用,因为其控制范围更广,可以提升安全性。与标准 ACL ...

2018-07-05 12:28:44 19611 1

原创 端口NAT配置(PAT)

3.1 实验目的(1)理解内网共享单个IP上网的工作原理;(2)掌握overload的使用;(3)掌握PAT的配置;(4)掌握静态端口映射的配置与应用;3.2 实验原理1.PAT工作原理  端口映射NAPT指除了使用IP之外,还使用端口号来建立映射。NAPT是实现多个内网主机共享一个公网IP接入的关键技术。NAPT建立映射需要用到传输层的TCP和UDP的端口号。在网络数据传输中,大部分是通过端到端...

2018-07-04 11:28:58 25819 1

原创 网络地址转换--动态NAT配置

2.1 实验目的(1)理解动态NAT和静态映射的区别;(2)掌握NAT地址池的配置;(3)掌握NAT转换中访问控制列表的应用;(4)掌握静态NAT的配置2.2 实验原理1.动态NAT动态转换(亦称NAT pool)是指不建立内部地址和全局地址的一对一的固定对应关系。而通过共享NAT地址池的IP地址动态建立NAT的映射关系。当内网主机需要进行NAT地址转换时,路由器会在NAT地址池中选择空闲的全局地...

2018-07-04 11:23:31 49163 4

原创 生成树协议 — STP

4.1.1 实验目的(1)理解生成树协议STP的用途(2)理解生成树协议STP的工作过程(3)掌握根桥、根端口、指定端口的选举规则(4)掌握生成树协议STP中端口角色的变化(5)掌握基本生成树协议的配置4.1.2 实验原理1.生成树协议STP网络设计通常采用冗余方法提高网络的健壮性、稳定性。常见的冗余方式有:链路冗余和设备冗余。如图4-1所示。该三层结构的网络中,核心层、分布层和接入层均采用了链路...

2018-07-04 11:05:48 47196

原创 Java 通过SMTP实现发送QQ邮件

在eclipse中创建项目,并把javax.amil.jar和commons-email-1.5,jar复制到项目中链接:https://pan.baidu.com/s/1sQjA1GEpKi6IJJRGHKxjeA 密码:4ene添加步骤:1.首先在项目下创建一个文件夹,保存我们的jar包。在项目名上右击,依次点击【New】-->【Floder】,打开新建文件夹窗口2.输入...

2018-07-02 21:57:47 9891 10

原创 DNS服务器的配置和管理

在vmware中添加并打开window server 2003 链接:https://pan.baidu.com/s/1M0AHFe8M3932SUIh3vLwWA 密码:i3s7一、实验目的1.掌握Windows 2000 DNS服务器的安装和配置3.掌握DNS客户端的配置2.了解DNS的工作原理二、实验原理1.名称服务器   根据工作方式的不同,授权名称服务器可以分为:主名称服务器、辅助名称服...

2018-06-30 13:06:41 17984

原创 java网络程序设计 聊天室之私聊、群聊和清屏功能的实现

TCP聊天室实现了私聊、群聊和清屏的功能,简陋的UI界面,一个服务器端,支持多个客户端之间的通信。项目代码:https://pan.baidu.com/s/17iegRam4KnWvcWHw3mvpxg 提取码:e8gx服务器端:可以开多个客户端进行客户端之间的通信。客户端:系统功能简介:1.客户端登录成功后可以查看聊天室用户列表,并可以进行个人聊天和群聊。...

2018-06-29 17:34:58 13462 30

原创 改造微信小程序Swiper组件,自定义切换动画

改造Swiper组件,符合业务的设计和动画效果。

2024-04-11 17:42:03 329

原创 覆盖微信原生组件Switch的样式

【代码】覆盖微信原生组件Switch的样式。

2024-04-11 17:33:26 386

原创 基于Taro + React 实现微信小程序半圆滑块组件、半圆进度条、弧形进度条、半圆滑行轨道(附源码)

给大家提供一些实现思路,找了一圈,一些文章基本不能直接用,错漏百出,代码还藏着掖着,希望可以帮到大家。3、可以点击区域切换档位。2、可点击加减切换档位。4、可以滑动切换档位。

2023-11-01 11:36:36 2122 2

原创 Mac M1 安装 Android Studio:Your CPU does not support VT-x

问题复现:Your CPU does not support VT-x按照官方步骤,下载安装完成后,在运行模拟器的时候,发现提示CUP不支持VT-x,原因是M1芯片和现在的as版本或avd 组件不兼容。卸载之前的安装,重新开始1、选择一个对的Android Studio版本Android Studio 在m1上特别卡顿,建议下载googole新出的m1特别版本Android Studio 下载文件归档 | Android 开发者 | Android Developers...

2021-10-21 15:38:57 6195 1

原创 github设置代理解决访问缓慢

# 设置ssgit config --global http.proxy socks5://127.0.0.1:1080git config --global https.proxy socks5://127.0.0.1:1080# 设置代理git config --global https.proxy http://127.0.0.1:1080git config --global https.proxy https://127.0.0.1:1080

2021-08-30 11:00:07 744

原创 小程序Input表单输入限制最大值、最小值、只能输入数字、小数点位数

import React, { useState, useCallback, FC, useEffect } from 'react'import { t } from 'gm-i18n'import { Flex, View, Dialog, Input, Toast } from '@xx-mobile/mp'import { observer } from 'mobx-react'import _ from 'lodash'import store from '../store'...

2021-08-27 14:42:41 5134

原创 git番外篇

git番外篇:需求:把develop分支的最新代码合到目前本地开发的feature/aftersale分支在feature/aftersale分支,pull最新的feature/aftersale代码然后 git pull origin develop把develop分支的最新代码拉到本地,git rebase -i develop 合到本地有冲突解决冲突,然后git rebase --continue git push origin feature/x -f 把代码强推上去提pr,把feat

2021-06-25 10:45:32 233

原创 Taro项目 实现一个在页面内自由拖拽的滑块,仿苹果手机的辅助按钮

效果:

2021-06-08 19:14:15 1155

原创 taro 项目中接入EChart图表库

1、使用物料市场提供的封装好的组件https://taro-ext.jd.com/plugin/view/5f648e4c0dd8313026e0942dnpm i echarts-taro3-react or yarn add echarts-taro3-react2、使用、封装折线图组件:lineChart.jsimport React, { Component } from 'react'import { View } from '@tarojs/components'

2021-04-01 16:12:56 1651 2

原创 Taro框架---仿微信左滑动删除

1、index.jsimport React, { Component } from 'react'import { ScrollView , View} from '@tarojs/components'import Taro from '@tarojs/taro'import './index.less'export default class Index extends Component { state = { animation: '', startX: 0,

2021-04-01 14:40:45 1343

原创 在taro项目中使用antv/f2图表库

1、安装@antv/f2npm install @antv/f2 --save2、封装Canvas组件F2Canvas.jsimport React from 'react'import Taro from '@tarojs/taro'import { Canvas } from '@tarojs/components'/**|--------------------------------------------------| @Drawer| #Component|

2021-03-29 17:50:13 3040 4

原创 生成树协议 — STP

4.1.1 实验目的(1)理解生成树协议STP的用途(2)理解生成树协议STP的工作过程(3)掌握根桥、根端口、指定端口的选举规则(4)掌握生成树协议STP中端口角色的变化(5)掌握基本生成树协议的配置4.1.2 实验原理1.生成树协议STP网络设计通常采用冗余方法提高网络的健壮性、稳定性。常见的冗余方式有:链路冗余和设备冗余。如图4-1所示。该三层结构的网络中,核心层、分布层和接入层均采用了链路冗余。 不过,对网络中冗余链路...

2020-12-25 11:25:31 1454

原创 网络地址转换--动态NAT配置

2.1 实验目的(1)理解动态NAT和静态映射的区别;(2)掌握NAT地址池的配置;(3)掌握NAT转换中访问控制列表的应用;(4)掌握静态NAT的配置2.2 实验原理1.动态NAT动态转换(亦称NAT pool)是指不建立内部地址和全局地址的一对一的固定对应关系。而通过共享NAT地址池的IP地址动态建立NAT的映射关系。当内网主机需要进行NAT地址转换时,路由器会在NAT地址池中选择空闲的全局地址进行映射,每条映射记录是动态建立的,在连接终止时也被收回。 ...

2020-12-25 11:21:13 2148

原创 学生信息管理系统:SSM框架实现学生信息的增删改查

一、项目概述:该项目主要实现对学生信息的管理,通过学生信息管理系统能够进行学生信息的增加、查看,查询,删除等功能,实现学生管理工作的系统化和自动化。该项目已经上传到github了,想看源码请移步:https://github.com/LazyTraveller/student_info_system (内含数据库脚本)百度网盘:链接:https://pan.baidu.com/s/1UEv3C7H0WvrPXYt18D3flw提取码:54yf二、项目采用的技术:该项目采用的...

2020-12-25 11:17:58 5610 1

原创 JavaScript 数组去重

//数组去重const unique = (arr) => [ ...new Set(arr)]// 或者遍历比较// 对象用for(let key in obj)// 数组用for (let i = 0; i< 10; i++) const unique1 = (arr) => { const arr1 = []; for (let i = 0; i < arr.lenght;i++) { if (arr1.indexOf(arr[i].

2020-07-29 17:14:25 278

原创 JavaScript 深拷贝

// 深拷贝 不适合函数的拷贝JSON.parse(JSON.stringify({}))// 递归深拷贝 时候数组和对象的拷贝const deepCopy = function (obj) { if (typeof obj !== "object") return; const newObj = obj instanceof Array ? [] : {}; for (var key in obj) { newObj[key] = typeof o.

2020-07-29 17:08:26 225

原创 JavaScript 数组扁平化

var arr = [1,2,[3,4,5,[6,7,8],9],10,[11,12]];// 多层嵌套function fn(arr) { let arr1 = []; arr.forEach((item) => { if (arr instanceof Array ) { arr1 = arr1.concat(fn(item)) } else { arr1.push(item) }.

2020-07-29 17:05:35 286

原创 JavaScript 闭包

什么是「闭包」? 「闭包」的作用是什么?var a = '变量' // 在函数内部可以访问的local变量function foo() { // 一个函数 console.log(a)}简言之, 有一个局部变量a,有一个函数foo,foo里面可以访问到a变量,这就是一个闭包:函数+函数内部能访问到的变量(作用域)的总和,这就是一个闭包。还有另外的一些概括:闭包指有权访问另一个函数作用域中变量的函数 。 《JavaScript高级程序设计》一个作用域可以访问另外.

2020-07-29 16:59:37 270

原创 工具函数的封装:判断js数据类型

利用Object.prototype.toStringconsole.log(Object.prototype.toString.call("hello"));//[object String]console.log(Object.prototype.toString.call(123));//[object Number]console.log(Object.prototype.toString.call(true));//[object Boolean]console.log(Object.

2020-07-21 11:07:58 352

原创 工具函数封装:时分秒转时间戳、时间戳转时分秒

时间戳转时分秒:// 格式化时间 export const formatTime = (time) => { let hours = Math.floor(time / 3600); let min = Math.floor((time % 3600) / 60); let s = parseInt(time % 3600) % 60; let hh = hours < 10 ? '0' + hours : hours; let mm = min < 10 ?.

2020-07-21 11:01:45 1386

原创 Taro项目使用websocket实现一个在线聊天室

Taro提供了一些websocket相关的接口https://taro-docs.jd.com/taro/docs/apis/network/webSocket/connectSocket1、聊天室的效果二、实现思路1、Taro.connectSocket创建连接2、onMessage监听服务器返回的数据3、创建一个全局存储消息的数组 let arr = []4、Input输入框获取到的值,在点击发送的时候,放进arr数组,arr.push({nickname:...

2020-07-20 17:47:53 3100 1

原创 Taro 项目实现更改微信头像,使用七牛上传图片

一、效果图二、taro 提供了选择图片的接口https://taro-docs.jd.com/taro/docs/apis/media/image/chooseImage// 文档提供的示例Taro.chooseImage({ count: 1, // 默认9 sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有 sourceType: ['album', 'camera'], // 可以指定来源是相册.

2020-06-10 17:03:31 1989

原创 工具函数封装:深度获取对象的值、深拷贝对象、去除数组对象中的重复对象、验证手机号、取小数点

// (1)深度获取深层对象的值const deepGet = (object, path, defaultValue) => { return (!Array.isArray(path) ? path.replace(/\[/g, '.').replace(/\]/g, '').split('.') : path) .reduce((o, k) => (o || {})[k], object) || defaultValue;}// (2)验证手机号码con.

2020-06-05 14:06:02 384

原创 工具函数的封装:日期格式化

一、代码/** * 时间戳 转换 * @param {*String} value 时间戳 * @param {*String} type 转换类型 * @param {*String} seperatorY 年份分割符 * @param {*String} seperatorH 时间分割符 */const formatTimeStamp = (value, type = 'YYYY-MM-DD', seperatorY = "-", seperatorH = ":") =>.

2020-06-05 11:50:16 255

原创 Taro项目实现手机号绑定,发送验证码倒计时

UpdatePhone.jsximport Taro, { Component, PureComponent } from '@tarojs/taro'import { View, Button, Text, Picker } from '@tarojs/components'import { connect } from '@tarojs/redux'import { AtForm, AtInput, AtButton, AtToast } from "taro-ui"import Ar

2020-06-02 11:26:53 1817

原创 在Taro项目中Ping++ 接入微信小程序支付

相关ping++支付文档:https://help.pingxx.com/article/1011655/源码的地址:https://github.com/PingPlusPlus/pingpp-js一、在项目中引入ping++的sdk可以使用npm 的安装方式npm install pingpp-js在页面的顶部引入let pingpp = require('pingpp-js');二、使用1、需要获取到code2、提交订单数据,成功生成预支付订单后,返回.

2020-06-02 10:46:09 991

原创 小程序待支付倒计时的实现

1、遵循框架taro语法 componentDidMount() { this.fetchInitData(); }fetchInitData = () => { let { id } = this.$router.params; console.warn('detail get id ', id) if (id) { this.props.dispatch({ type: 'order/personOr

2020-05-25 14:11:44 889

空空如也

空空如也

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

TA关注的人

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