- 博客(31)
- 收藏
- 关注

原创 使用node.js爬取网页数据(简单粗暴)
前言本文使用node以爬取百度新闻为例展示node爬虫技术。需求:能看懂html网页结构,知道自己想要哪里。需求:能看懂html网页结构,知道自己想要哪里。需求:能看懂html网页结构,知道自己想要哪里。正文1.再vscode中新建文件夹,右键文件夹选择集成终端中打开2.输入初始化命令:npm init -y3.安装express 模块:npm i express4.安装got模块:npm i got5.安装cheerio模块:npm i cheerio安装完成应显示:6.代码部分
2021-01-22 19:12:19
5020
9

原创 使用node.js连接mysql数据库(通俗易懂)
前言:搭建博客有几天了,今天终于第一次写文章,有不足之处希望大家多多指正。本篇文章代码对小白来说可能看不懂,但是我是从0开始建文件夹运行的,跟着写肯定没问题要求:Navicat会基本的建表!!!要求:Navicat会基本的建表!!!要求:Navicat会基本的建表!!!一、准备工具1.mysql数据库+Navicat可视化工具(数据库表单已经建好)2.vscode (准备工作基本上不用说基本上都有)3.node.js 环境 (自行安装)二 、准备工作1.再vscode中新建文件
2021-01-19 16:11:34
26341
22
原创 React-native-camera 在小米手机上拍照查看闪退
场景:为实现可拍照和录像的相机用react-native-camera这个库手写一个相机,发现了拍出来的图片在小米10上查看闪退根据手机后台捕获的错误信息是什么玩意太大了(之前还以为是图片显示组件的问题)改进:相机吊起的时候支持传参,限制宽高因为react-native-image-crop-picker的相机拍出来的宽高是1300、1000react-native-camera 拍出来的宽高是6016、4512,小米10内置算法没有压缩导致闪退参考资料:Canvas: trying to d
2023-10-23 20:14:06
304
原创 dva/redux的connect 和useRef/forwardRef混用的问题
dva/react-redux的connect与React.forwardRef结合ref失效的问题
2022-07-19 21:06:04
776
原创 使用umi的keep Alive实现详情页面的回退,保留滚筒条高度
React集成react-activation,实现页面缓存记录react页面跳转是否要回到指定浏览位置解决方案antd-design-pro实现多页签,切换页签保留缓存,keep-aliveumiAntDesign使用umi-plugin-keep-alive实现KeepAlive状态存储使用umi的keepAlive实现详情编辑页面的回退,保留列表的查询条件。...
2022-07-15 11:02:47
1846
原创 【react】最基础的性能优化方法
引言从React组件的方向去做最基本的新能优化,组件允许我们将UI拆分为独立可复用的代码片段并对每个片段进行构思一 、使用shouldComponentUpdate生命周期函数 来规避子组件冗余的render更新react 组件会根据shouldComponentUpdate 的返回值来决定是否来进行组件的更新,默认值为true每当数据更新的时候 父组件中的子组件都会无条件的re-render我们利用shouldComponentUpdate 生命周期函数内第一个参数和当前值进行判断,如果一样返
2022-02-08 17:55:20
322
2
原创 从输入 URL 到页面加载完成的过程中都发生了什么事情?
原文:从输入 URL 到页面加载完成的过程中都发生了什么事情?附带:一篇非常古老的浏览器原理剖析这个大佬讲的太详细了(从键盘和触摸屏开始),我就捡了一些自己能看懂得来写1. 从输入框到敲回车操作系统 GUI 将输入事件传递到了浏览器中,在这过程中,浏览器可能会做一些预处理,比如 Chrome 会根据历史统计来预估所输入字符对应的网站,比如输入了「ba」,根据之前的历史发现 90% 的概率会访问「www.baidu.com 」,因此就会在输入回车前就马上开始建立 TCP 链接甚至渲染了,这里面还有很多
2022-01-06 17:12:39
516
原创 React-Native ios pod install问题
1、提示: Could not find ‘CFPropertyList’ (>= 2.3.3, < 4.0) among 80 total gem(s)解决方法:gem install xcodeproj或者sudo gem install xcodeproj配置成功继续pod install
2021-11-22 09:38:33
1766
原创 谷歌浏览器解决跨域问题
终端命令行输入open -n /Applications/Google\ Chrome.app/ --args --disable-web-security --user-data-dir=/Users/edz/Downloads/chromeedz换成你电脑的名称
2021-11-15 19:13:49
334
1
原创 js小玩意(四) 判断数组是否有某个值,有就删除,没有就增加
一般就多选框里用的多,因为没有现成的组件所以手写了个多选卡片。里面用到了这个逻辑。总忘。idArr :数组id :目标数值 if (idArr.indexOf(id) > -1) { idArr.splice(idArr.indexOf(id), 1) } else { idArr.push(id) }或者用三目运算符 一句话解决 (idArr.indexOf(id) > -1) ? idArr.splice(idArr.indexOf(id
2021-10-25 18:16:43
3257
1
原创 【react+AntDesign】树形结构回显置灰
先看效果图:1.编辑页面已经选了的:2.新增页面根据已经选的置灰:说明:数据都是之前存好的,主要看判断逻辑传进来的 ids是已经选中的数据,FromJS是公司封装的方法,类似于json.stringfy()和json.parse()。实际就是操纵数组方法,省市区三个大数组都是存在缓存中使用的时候把被选的数组传进来进行逐层比较然后返回一个tree结构给antD的组件用。代码:// 三级结构export function findProvinceCitySale(ids) { c
2021-10-21 11:47:48
1047
原创 .then写法和async await 有啥区别?
最直观的讲一下有啥区别场景:三个接口 接口二用到接口一返回的数据接口三用到接口二和接口一返回的数据解决方法:promise + .then 写法const makeRequest = () => { return promise1() .then(value1 => { return promise2(value1) .then(value2 => { return promise3(value1, v
2021-09-13 22:38:23
5824
原创 【Vue】上传二进制文件
需求:vue上传二进制文件方发:用 element 的 upload 上传组件代码思路:1、监听上传文件时候的回调打印结果:push 到变量中2、用formdata格式 进行上传 let formDate = new FormData(); //添加入参 formDate.append("file", this.image.fileList[0].raw); //设置请求头 let config = { headers
2021-08-27 09:59:49
2437
原创 【Electron】开发环境搭建:安装Electron
1、新建文件夹2、运行代码(前提有node ,有npm ,有cnpm)cnpm initcnpm install electron --save-devnpx electron -v 3、成果图:版本信息4、成果图:运行Electron这一套下来不行我把鼠标吃了按理说应该是畅通无阻./node_modules/.bin/electron...
2021-08-25 10:46:07
209
原创 【Electron】require is not defined的问题解决方法
问题:JS 用require引入node的fs模块会出错解决方法:main.js中BrowserWindow实例加一条语句 webPreferences: { nodeIntegration: true, }还不行? 那再加一条: webPreferences: { nodeIntegration: true, contextIsolation: false }...
2021-08-23 00:01:56
1378
1
原创 【原生js】划过单词+匹配文章关键字,连线+高亮显示
需求:划过词语匹配文章关键字,连线+高亮显示思路:功能拆分,先实现划过高亮,然后实现连线。灵感来源:1.匹配单词高亮2.元素之间连线3.同事指导了两句3.睡一觉在此感谢二位大佬分享的文章下面融合两篇文章的精髓并删删改改,完成功能。上代码:<!DOCTYPE html><html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" cont
2021-08-20 15:18:57
318
原创 记不住的坑(三)el-select 回显以后 点击没反应
问题:表单编辑以后回显select 下拉框 ,点击option没反应。原因:如果option是循环赋值来的,数据层次太多,render函数没有自动更新,需手动强制刷新。解决方法:加 @change="$forceUpdate()" 方法就ok ,如下: <el-select @change="$forceUpdate()"> </el-select>官网解说如下 https://cn.vuejs.org/v2/api/#vm-forceUpdate...
2021-08-06 17:11:43
1398
1
原创 记不住的坑(二)Element UI中upload组件上传docx文件缩略图不显示的问题
前言:最近写项目的时候碰到了upload上传以及回显的问题,这个项目比较复杂一个破upload组件都拆成三个组件来写,上传回显的时候带着一堆数据三层组件到处跑写起来属实头大。(个人认为套两层不就ok了嘛- -)图片上传完毕有图片回显,如图。可以显示的原因为他的url就是可以显示的。反过来我们看docx文件上传完之后,因为docx的url是一个下载地址,所以不支持回显。 解决方法:既然他url不支持回显,那我们就换一个固定的url进行绑定。首先找个图,把url引入到文件里。利用监听的方法改变
2021-08-05 20:59:32
2942
4
原创 记不住的坑(一)编辑弹窗改变数据,表格数据实时变动问题
问题:在表单中修改数据,经常遇到表格的数据也跟着修改的问题,并且不管是不是按确定或取消按钮,表格的数据还是被修改了。如图:可见input这波双向数据绑定就很不符合需求。原因: //修改 edit (row) { this.titleDialog = { title: "编辑", visible: true }; this.form = row; }, 打开弹框传过去的row是Object对象类型,.
2021-07-30 11:10:20
1580
7
原创 使用element ui日历组件实现今天之前都不能点击的功能
需求:如图,假如今天是7月18日,我们要实现今天之前的日子都不能点击,且变为灰色,今天以后的(包括下个月)都正常。之前百度了半天,都没有找到解决的方法,琢磨半天以后找到一个笨方法可以实现。本文只讲思路和部分项目代码,实现还要靠个人手敲。1.通过打开f12观察的dom节点,我们可以发现今天的格子是有类名的。所以我们可以从这里入手ps: 在这里说一下一页日历中禁止非本月日期点击事件的方法:// 使不是本月的日期不可点击,不会跳转到其他月份/deep/ .el-calendar-table {
2021-07-19 00:01:36
3525
1
原创 js 获取月份的范围
本文使用js封装一个方法 获取一个月的日期范围。这个方法是在解决需求的时候百度查的,具体出处忘记了,觉得好用就存下来了,复制粘贴直接调用就ok。 // 获取一个月的日期范围 // this.getMonth(type,months) //type为字符串类型,有两种选择,"s"代表开始,"e"代表结束,months为数字类型,不传或0代表本月,-1代表上月,1代表下月 function getMonth(type, months) { var d = new Date(); v
2021-07-18 23:00:09
872
原创 js小玩意(三)从数组中找到指定元素并删除
需求:从数组中找到小明并删除 var sb = '小明' var sbTeam= ['小黄','小绿','小明','小兰'] // 需求 : 从数组中找到 SB 小明并删除 sbTeam.splice(sbTeam.findIndex(item => item ==='小明'),1) //方法一 // sbTeam.splice(sbTeam.indexOf('小明'),1) //方法二 console.log(sbTeam);运行结.
2021-07-13 19:29:20
4585
2
原创 js小玩意(二) 取出数组中每项的次数和数组去重(超简单)
本人主要介绍取出数组中每一项出现的次数查找次数方法一: 使用reduce方法 取出数组中每项的次数完整代码:解释:cur—指当前处理的哪一个pre—指上次处理完毕的回掉结果查找次数方法二注意:以对象的形式展现数组去重,遍历数组,和新数组比较注意: indexof == -1 说明新数组没找到这一项,然后就往新数组push...
2021-05-01 19:23:06
284
原创 js小玩意 (一) :数组扁平化(超简单)
数组扁平化概念:用于将嵌套多层的数组“拉平”,变成一维的数组方法一:自定义方法方法二:es6新增 flat方法参数:flat(1)代表要展开1层 , 2就是两层
2021-05-01 10:45:53
125
原创 mysql连接错误2013的解决办法
关于mysql连接2003还是2013(忘记了)报错的问题(如下图),当时搜了一下网上以后很多解决方法,有各种改文件的,还有输入命令重启的·,但是我试过一种方法特别简单。下面就分享给大家!因为当时解决了以后就没报过错,所以忘了时2003还是2013了 (这个图是故意断了连接截的图)打开计算机服务页面(打开顺序如下图)找到mysql服务,右键重新启动即可!总结:这个方法我每次连接不上的时候都管用,相比于网上的改文件,输入命令简单多了,因为他说的那个文件我搜不到- -,有问题的小伙伴可以试试哈哈
2021-04-07 08:40:32
6942
1
原创 ES6for...of 和for...in 的 区别
1.for…of :循环 字符串、数组、伪数组、set、map、arguments、nodeList (就是不能循环对象)2.for…in:循环对象代码演示:<script>// 循环 字符串、数组、伪数组、set、map、arguments、nodeList // 就是不能循环对象//循环字符串 -------------------------------let str1 = 'abcdef'for(let val of str1){ console.log(
2021-01-30 12:06:10
247
原创 js中mouseenter、mouseleave、mouseover、mouseout的区别
前言今天总结下mouseenter、mouseleave、mouseover、mouseout的区别正文代码and图例:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Doc
2021-01-28 12:09:35
652
原创 js中forEach 和$.each的用法和区别
一、区别$.each():方法是jQuery中的方法,用于遍历数组$().each: 方法是jQuery中的方法,用于遍历对象forEach :原生js方法,和for循环相似, 循环遍历数组二、用法$.each(array,function(index,item){…})array = 数组 , index = 下标 , item = 对应的值$ ().each():$(‘selector’).each(function(index,value)
2021-01-27 19:18:46
2002
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人