自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

luck_lin

个人学习记录

  • 博客(149)
  • 资源 (1)
  • 收藏
  • 关注

原创 利用泛型处理ts推断二级对象key类型为never

利用泛型处理ts推断二级对象key类型为never因为RootState的所有value类型为一个对象,但是这些对象没有共有key,所以never是唯一可能的参数。如上写法StateKey类型为never。

2023-01-18 15:51:20 27

原创 style对象和less/scss互相转换,驼峰转中横线,支持嵌套转换

emotion style、Inline style对象和less/scss互相转换,支持格式化缩进,camelCase、kebab-case互相转换,支持嵌套。

2023-01-11 16:21:05 27

原创 mybatis-plus递归行政区划数据组装树型结构

使用mybatis-plus实现,支持通过父级id查询所有子级;支持通过deep查询层级深度

2022-07-21 15:04:06 253

原创 vue项目中使用svg,通过img标签轻量解决方案,支持动态颜色更改

前言svg的优点不多说,怎么在vue项目优雅的使用svg?通过img似乎很优雅简单,但是你知道通过img引入svg怎么更改颜色吗?知道怎么动态切换颜色吗?一、components下创建自定义公共svg组件zc-svg.vue:<template> <div class="svgBox" :style="{ width: `${size}px`, height: `${size}px` }"> <img :src="require(`./${ty

2022-04-28 10:16:39 1831

原创 nuxt3项目中使用eslint和prettier+commitlint附常用规则配置

nuxt3项目中使用eslint和prettier,附常用规则配置

2022-03-31 13:20:55 1889 1

原创 flutter项目更改应用名称图标

图标准备准备图标图片(建议512*512)打开图标工厂上传准备的图标勾选ios旧尺寸以及更多参数的自动圆角即可,点击开始生成生成成功后下载解压,包含ios和android两个文件夹,备用ios应用名称和图标配置名称标识版本等配置:图标替换,将项目/ios/Runner/Assets.xcassets/AppIcon.appiconset文件夹删除,替换为刚下载的icons/ios目录中的AppIcon.appiconsetandroid应用名称和图标配置AndroidStu

2022-03-15 14:49:14 3258

原创 最新flutter2.10.3 Mac开发环境搭建

准备工作升级Macos为最新系统安装最新Xcode安装brew配置flutter下载flutter配置环境变量vim ~/.bash_profile添加如下export PUB_HOSTED_URL=https://pub.flutter-io.cn //国内用户需要设置export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn //国内用户需要设置export PATH=FLUTTER_DIRECTORY/bin:$PA

2022-03-07 11:05:08 2540

原创 Dart语言基础(flutter必学)

开发环境配置1.安装dart sdk中文地址:https://dart.cn/get-dartwindows如果是免安装包需要将sdk的bin目录添加到用户变量PATH中2.vscode开发工具配置安装Dart Cod和Code Runnere插件新建一个目录并创建xxx.dart文件即可开始Hello World!1.基础-变量-类型void main(List<String> args) { // 注释 ///注释 /**注释 */ // 用类型定义变量的话

2022-03-04 10:11:54 3070

原创 超详细讲解access和trunk的区别,从此不再迷糊

我在网上阅读了好几篇关于这个主题的博文,发现很多都是有错误理解的,特此发表一下关于本人的理解,本文只简单概述access和trunk的区别并且hybrid不做探讨。一、接收区别access收到的帧通常是不带vlanTag的,收到无tag的帧会打上vlanTag(将该端口PVID作为该tag的vlanID)access也有可能收到带tag的帧(通常是被攻击),收到带tag的同样会将tag中的vlanID更改为该端口的PVID,因为不能转发到不同vlan端口不代表不能收不同vlan帧所以在那些很.

2022-01-11 11:18:06 18575

原创 通过openwrt路由器访问桥接模式下的光猫

光猫桥接模式下,通过路由器访问光猫.简单设置 不用登录ssh命令行,只在网页上操作就可以.openwrt 只需要三步:假设光猫的IP地址为192.168.1.1,openwrt路由器 局域网LAN 地址 不要和光猫同网段.1 网络->接口->添加新接口 , 接口绑定在 vlan0.22 设置新接口为 静态地址 , 192.168.1.254 ,这个新加的接口 不要开 DHCP3 添加一条静态路由 ,让 访问192.168.1.1 的流量从 新接口192.168.1.25...

2021-12-26 17:39:59 14918

原创 零耦合的前后端分离管理系统权限解决方案

前言首先声明本文章只是讲解一个简单而又能实现对权限管理不是太苛刻的管理系统的解决方案,同时如果与你搭配的后端人员技术很low的情况下该方案我想会更适合你,当然这对你的js基础会有点考验,后端只需要保存一个角色表,给每个账号对应一个或多个角色即可。思路1.根据权限动态渲染菜单后端只需要帮你保存角色及对应角色路由id(这个id就是在角色权限管理中由你自己传给后端保存的路由唯一值path或者name),可以在登录接口直接返回该用户的所有能访问的id,然后通过能访问的路由id去递归过滤你项目中定义好的路由数组

2021-12-09 20:07:07 747

原创 vue移动端下拉加载分页全面解决方案

export default { data() { return { contents: [], pageNo: 1, pageSize: 10, total: 0, emptyText: '暂无数据', isLoading: false } }, onReady() { this.getList() }, onReachBottom() {//小程序事件,如果纯h5项目可以用滚屏插件的方法代替 if(Math.ceil(this.total .

2021-11-24 16:25:25 1765

原创 子网划分,掩码转换计算

用一个案例来讲解:计算192.79.29.138/26网络地址,广播地址,主机地址。已知这是一个C类地址网络位向主机位借了2位(24+2=26)可得:子网数=2^2=4(2位可有2^2种组合规则) 块=2^6=64所以: 网络地址=192.79.29.128(207以内最接近207并且是块的倍数<64*2=128>) 广播地址=192.79.29.191(64*3-1=191) 主机地址=192.79.29...

2021-11-24 10:52:45 1914

原创 wireshark分析arp和发送arp包

华为模拟器ensp安装包附带有winpcap和wiresharkwireshark目前新版本已经对界面汉化,但是没有发包工具,我使用的是科来数据包生成器一:分析和过滤arp包的reply,找到网关的arp reply包(如果没有就开始抓包,执行arp /d删除本机arp表,会立马看到网关的arp reply),文件-导出特定分组,再保存弹框中选择Selected packets only可以保存选中的单个数据包二:打开 科来数据包生成器导入刚才保存的cap文件三:已知192.168..

2021-11-03 17:22:12 1036

原创 移动光猫改桥接,开启telnet

声明:未经许可请勿转载至个人博客和其他网站!一、获取超级密码目前已知中国移动光猫华为的HG8546M、中兴F623、吉比特H2-3相关信息:默认管理地址:192.168.1.1默认账号:CMCCAdmin在安装完成(下发完业务)之前初始密码为aDm8H%MdA如果能直接正常登录请跳到下面第二步。部分设备在下发完业务之后会变(有可能是安装人员故意改了的),如果该密码错误,就要麻烦一丢丢:准备工作:1.将路由器背面所有参数拍个照片方便查看2.记住上网设置里的VLAN ID(如 3_INTE.

2021-09-29 15:21:29 23059 1

原创 springboot微服务swagger全局配置

集成需要的依赖: <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>${swagger.version}</version> <

2021-08-19 17:44:37 444

原创 java递归组装树型菜单数据,并指定实体字段不返回到前端

权限菜单表:PermissionServiceImpl(我用的mybatis-plus):public class PermissionServiceImpl extends ServiceImpl<PermissionMapper, Permission> implements PermissionService { @Override public List tree() { List<Permission> permissi.

2021-08-18 15:55:54 335

原创 使用jenkins+Dockerfile打包部署nodejs项目

如下便是jenkins从git拉下代码后直接发送到服务器的基于nodejs的nuxt ssr项目docker_nuxt(因为用docker就不需要再Jenkins中构建了),其中重点就是Dockerfile和docker_build.sh,其余除了ecosystem.config.js都是项目目录和文件[root@sgr3xwozl6izswys docker_nuxt]# lsapi.config.js assets docker_build.sh components Docke...

2021-07-27 17:55:58 577

原创 uniapp/小程序生成内嵌动态二维码页面分享图并保存

uniapp/小程序生成内嵌动态二维码页面分享图并保存页面内容:页面vue代码:<template> <view class="imageContainner"> <view class="canvasWrap"> <canvas canvas-id="jobCanvas" class="jobCanvas"></canvas> </view> <u-button cla.

2021-05-14 16:33:02 647

原创 nodejs 爬取m3u8视频

let fs =require('fs');let readline=require('readline');let request = require("request");let path = require("path")let rl=readline.createInterface({ input:process.stdin, output:process.stdout})function ques(){//m3u8文件路径 return new Promise(functio.

2021-01-13 09:38:11 1518

原创 vue实现图片自定义尺寸裁切并上传

安装vue-cropper,进行二次封装<template> <a-modal :visible="visible" :title="title" :maskClosable="false" :confirmLoading="confirmLoading" :width="400" @cancel="cancelHandel" :destroyOnClose="true" > <a-row>

2020-07-27 14:18:46 927

原创 sql综合练习

-- 建表-- 学生表CREATE TABLE `Student`(`s_id` VARCHAR(20),`s_name` VARCHAR(20) NOT NULL DEFAULT '',`s_birth` VARCHAR(20) NOT NULL DEFAULT '',`s_sex` VARCHAR(10) NOT NULL DEFAULT '',PRIMARY KEY(`s_id`));-- 课程表CREATE TABLE `Course`(`c_id` VARCHAR(20),

2020-07-15 15:29:04 141

原创 谁说centos7不能装mysql了?最简捷centos7中安装mysql5.7保姆级教程

首先安装MySQL的Yum Repositorywget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpmyum -y install mysql57-community-release-el7-10.noarch.rpmyum -y install mysql-community-server启动mysql服务systemctl start mysqld.service查看mysql运行状

2020-07-15 11:07:23 358

原创 java-study ArrayList实现发牌、洗牌、排序、随机地主

输出示例:玩家:张三丰剩余牌:[大王, 小王, 2♣, A♠, Q❤, J♣, J❤, 10♠, 9♣, 8♣, 8♦, 7♦, 6❤, 4♣, 4♠, 3♦, 3♠]玩家:杨过剩余牌:[2♦, A♣, K♠, K❤, Q♠, J♦, 10❤, 9♦, 9❤, 8❤, 7♣, 7❤, 6♦, 5❤, 4♦, 4❤, 3♣]玩家:东方不败剩余牌:[2♠, 2❤, A♦, A❤, K♣, K♦, Q♣, Q♦, J♠, 10♣, 10♦, 9♠, 8♠, 7♠, 6♣, 6♠, 5♣, 5♦, 5

2020-06-21 18:45:34 124

原创 java-study Thread线程、synchronized同步锁、await()/notify()

package com.TestThread;public class Test { public static void main(String[] args) { Account a0 = new Account(); Account a1 = new Account(); User u0 = new User(a0, 2000); User u1 = new User(a1, 2000); Thread t.

2020-06-16 23:16:52 381

原创 java-study使用FileInputStream与FileOutputStream文件读/写/复制/递归拷贝,枚举的使用

import java.io.FileInputStream;import java.io.FileOutputStream;/** * file读写工具类 */public class FileReadAndWrite { public static void main(String[] args) {// FileReadAndWrite.read("E:\\java-study\\src\\com\\streamTest\\fis2.txt"); .

2020-06-14 23:56:31 203

原创 基于vue、less的vue商品筛选组件,支持多选/单选,默认选中、默认展开/收起、重置、区间范围值筛选

先看效果:组件代码:<template><dl class="filterItem"> <dt>{{label}}:</dt> <dd :class="{hasMore: hasMore}" ref="item"> <template v-if="firstItemText"> <div class="item" :class="{active: !value.

2020-06-03 18:09:08 1206

原创 Nuxt使用配置、注意事项、jenkins部署

目录配置主题色及全局变量配置axiosUI库按需引入vuex的使用其他nuxt矿建介绍和项目安装就不多说,下面直接介绍开发时常用配置:配置主题色及全局变量以less为例先安装less和less-loader,然后在nuxt.config.js中build下配置:loaders: { less: { javascriptEnabled: true, ......

2020-03-31 11:21:54 699

原创 shell脚本expect实现一键登录服务器并进入指定目录删除文件

#!/usr/bin/expect -fspawn ssh root@47.108.95.*expect "*password*"send "*qwe123\r"expect "*#"send "cd /home/data/test\r"expect "*#"send "rm ./*\r"expect { "*是否*" {send "y\r"} "*没有*" {se...

2020-03-30 10:24:28 1460

转载 antd-img-crop,使用 Ant Design Upload 时裁切图片

介绍我们经常会遇到,需要上传固定尺寸图片的场景,比如更换头像图片等。这时就需要先对图片进行裁切,Ant Desgin 默认并没有提供这样的功能。antd-img-crop 是一个用于包装 Ant Design Upload 的组件,可实现在上传前,先对图片进行裁切,然后上传裁切后的图片。示例https://codesandbox.io/s/4qoom5p9x4安装yarn...

2019-12-07 22:07:38 4632 2

原创 自己写一个平铺的datePicker

最近公司项目有地方用到平铺的时间选择组件,并且只能选择当天之后的时间,还要能切换月份,寻思antd都是下拉弹出框的datepicker,没有想要的效果,于是就自己写了,分享给大家。先看效果(这个只是demo,样式无视):紫色的代表当天以后的时间,运用的时候可以在事件函数回调中再判断下是否所选时间大于当天时间;点击prev/next按钮切换月份,当12月时next后自动切为下一年,...

2019-11-25 23:21:02 163

原创 前端预览和下载图片/文档的几种方法

浏览器下载文件主要还是看文件保存的时候有没有设置正确的conten-type,有的话浏览器访问url时会自动打开该文件将内容显示在页面上,前提时浏览器本身能识别这个文件类型,比如图片/文档/文本等,否则浏览器则会默认直接下载该文件。。。当然如果后端能直接返回文件流(bolb类型)的话就好处理了)用js实现强制下载图片(经测试IE全版本不支持):downloadIamge(imgsrc, ...

2019-11-14 22:35:45 6368 1

原创 antd表单验证的坑

坑一:Form.Item中的表单如果是调用的react子组件,则表单验证功能失效,请看例子:表单父组组件:Item组件:这样虽然能正常渲染出组件样式,但是会导致submit功能Bug和resetFields功能失效,如下图:解决办法:刚开始我以为是我哪里写得不对,找了很久原因,把子组件换class写法函数写法都试了,甚至把子组件搬到父组件同一个文件中都还是不行,...

2019-10-28 22:24:37 3877

原创 umi+dva开发环境+常用配置和webpack配置

安装(官方文档:https://umijs.org/zh):yarn global add umi使用:使用umi -v可查看版本,确保全局安装没问题umi g page <文件名>//创建包含目录的页面home/index.js home/index.cssumi g page home/index//创建dva modle文件(如果项目是用yarn cr...

2019-10-26 18:10:57 8989

原创 react中使用mobx状态管理

中文文档:https://suprise.gitbooks.io/mobx-cn/content/refguide/api.html安装 Mobxcnpm install mobx -Scnpm install mobx-react -S使用两个 Babel 插件,支持ES6装饰器语法cnpm install @babel/plugin-proposal-decorator...

2019-10-20 16:26:09 346

转载 nodejs实现微信支付

本文链接:https://blog.csdn.net/qq_14993375/artic...

2019-10-07 10:51:33 3234 4

原创 远程连接linux、传输文件

windows: 下载xshell、xftp、sourceCRT、sourceFXmac/linux: ssh -t 用户名@IP地址 -p 端口,mac系统要在 偏好设置->共享 中打开文件共享、远程登录、远程管理服务连接后传输文件:将远程系统上的文件拷贝到本机:scp -r 文件 本机用户名@本机ip:要存放的路径将本机文件拷贝至远程系统:sudo scp -r 本机用...

2019-09-18 13:34:29 818

原创 react-native配置路由导航、传参示例,标题样式配置

一.关于项目环境配置 我就是跟着react native中文网一步步来的,模拟器就用的android studio 的原生模拟器,这个模拟器可能跟其他大多数模拟器调出开发菜单的快捷键不一样,我是找了N久才发现快捷键是Ctrl+M打开开发菜单,差点都准备换模拟器了,因为只有打开开发菜单的JS Debugging才能调试,开发菜单如下图:二.页面导航、路由配置 1.装reac...

2019-03-19 16:47:32 1870

原创 python3+scrapy+selenium爬取英雄联盟英雄资料

继前一篇文章用nodejs+puppeteer+chromium爬取了这个英雄资料后,在本篇同样爬这个页面,思路都差不多,只是用不同语言来实现,可作为参考,个人觉得爬虫还是nodejs比较好用,可能是我python太菜吧本例环境和所需第三方包:python3、pycharm、selenium2.48.0(用3.0+版本会报错,因为新版本放弃phantomjs了,当然也可以用chrome和fir...

2019-03-01 13:33:42 660 1

原创 nodejs+puppeteer+chromium爬取异步数据页面(英雄联盟英雄资料列表页+详情页)

puppeteer介绍对于静态页面的爬取是灰常简单的,一个request+cherrico即可,今天我动手对英雄联盟官网英雄资料爬取时发现英雄列表和详情页是通过js异步渲染的数据,所以就用上了这个神器puppeteerPuppeteer能够模拟一个浏览器的运行环境,能够请求网站信息,并运行网站内部的逻辑。然后再通过WS协议动态的获取页面内部的数据,并能够进行任何模拟的操作(点击、滑动、ho...

2019-02-28 14:44:41 2339

3D层叠轮播图(原生js,兼容ie9及以上,可用于vue和react项目)

3D层叠轮播图(原生js,兼容ie9及以上,可用于vue和react项目)

2018-08-31

空空如也

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

TA关注的人

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