自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

?sonder* 的博客

两手一撑,与世无争,安排!

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

原创 前端网络请求性能优化之缓存

当第一次访问网站的时候,电脑会把网站中加载的图片与数据下载到电脑上,当我们再次访问该网站的时候,网站就会直接加载出来而并不是重新下载。在前端性能优化的方式中,缓存占据一定的地位,使用好了缓存会对前端有很大帮助。浏览器中的缓存机制大多数都是 HTTP 协议定义的缓存机制,但也有非 HTTP 定义的缓存机制。

2022-09-16 16:16:03 1609 1

原创 【解决方案】Exception in thread “main“ java.io.IOException: Downloading from……

写在前面在进行React Native运行时,脚本会自动下载对应版本的gradle,这时候会报错:Exception in thread "main" java.io.IOException: Downloading from https://services.gradle.org/distributions/gradle-6.9-all.zip failed: timeout,下面这篇文档会帮助你搭建基本的 React Native 开发环境。问题描述在进行React Native运行时需要运行./

2022-05-06 09:00:36 4961 5

原创 React Native的避雷指南,报错的都进来看看

写在前面  ReactNative环境搭建相比较繁琐,按照React Native 官网步骤进行安装道理上来讲指定没问题的,结果差强人意。本来自己想高高兴兴做个APP完成项目,没想到光配置就花费了2天。嗐~  为以防项目运行出错,请严格按照下面文档中软件版本进行配置!!!  为以防项目运行出错,请严格按照下面文档中软件版本进行配置!!!  为以防项目运行出错,请严格按照下面文档中软件版本进行配置!!!  好了,废话不多说,下面这篇文档会帮助你搭建基本的 React Native 开发环境。详细教

2022-05-06 08:39:40 1208

原创 useEffect走过的那些坑

写在前面  在React中,有两种组件:函数组件与class组件。两者的区别之一就在于:class组件有生命周期,而函数组件由于没有继承React.component,所以函数组件无生命周期。于是你查阅文档,发现使用useEffect可以解决这个问题。那么问题就来了:如何用useEffect模拟componentDidMount生命周期如何正确地在useEffect里请求数据?[]又是什么?为什么有时候出现无限重复请求的问题?…  刚开始使用这个hooks的时候,我也同样被这些问题所困扰,

2022-04-29 11:46:47 1775 1

原创 this使用指北

写在前面  如果要问JavaScript中哪个知识点容易混淆,this指向绝对名列前茅,今天我们就来聊聊JavaScript的一大山脉——this指向。  JavaScript的this总是指向一个对象,而具体指向哪个对象是在运行时基于函数的执行环境动态绑定的,而非函数被声明时的环境。即this指向哪里由函数在哪里调用以及如何被调用决定。默认绑定  在不能使用其他绑定规则时执行的规则,一般作为普通函数调用。默认绑定给全局, 浏览器为window, node为global全局环境中,this默认

2022-04-19 20:30:26 89

原创 今天聊:程序媛是否需要职业规划?

前言  一年一度的春招正在进行中,又有不少同学为找工作犯难,今年的春招我也参与在其中,想着可以在春招中找到合适的厂子出去实习,想让自己技术可以更上一层楼。那么问题就来了,面试官常问的一个问题就是:你的职业规划是什么?说实话,面试前我从没想过这个问题,甚至连我为什么会选择前端,为什么要在大三就开始找实习?我也是一头雾水,根本不知道如何下手。今天姑且谈谈关于程序媛的职业规划,不管是对于我,还是以后想从事这个行业的人一些建议吧。正文  回到面试官问的这个问题:你的职业规划是什么?该怎么回答?  我觉得大多

2022-04-01 12:01:36 4439 6

原创 你不知道的Vue变化侦测

双向数据绑定从页面到数据都是通过事件监听的方式,即v-on事件监听。对于表单,就是v-bind:value+v-on:input对于单复选框,就是v-bind:value+v-on:change对于select,将value作为props传给options,用change监听从数据到页面就是数据绑定,主要是响应式数据绑定,v-on事件监听只是去改变数据,而数据如何响应还是依赖的响应式数据。整体MVVM 数据双向绑定主要是指:数据变化更新视图,视图变化更新数据,如下图所示:目前前端框架基

2022-03-10 12:04:11 720 1

原创 浅谈vue组件间通讯

如何进行父子组件的通信?​父组件通过import引入子组件,并在父组件中通过component属性注册,然后子组件就可以用标签的形式嵌进父组件了。通过props进行通信子组件通过props选项能够接收到来自父组件的数据。props是单向绑定的,即只能父组件向子组件传递数据,不能反向。并且传递方式也有两种:静态传递:子组件通过props来声明一个自定义的属性,但这个属性是静态的,不能发生改变。通常用来传字符串。动态传递:通过v-bind绑定props的自定义属性,传递过去可以是一个表达式、布

2022-03-04 22:15:00 492 2

原创 连vue组件的三大核心都不知道还指望在前端混下去么

#mermaid-svg-1Ttew15NUeAj72uL {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-1Ttew15NUeAj72uL .error-icon{fill:#552222;}#mermaid-svg-1Ttew15NUeAj72uL .error-text{fill:#552222;stroke:#552222;}#mermaid-svg-1Ttew15

2022-03-04 17:56:02 1108 2

原创 # Server returns invalid timezone. Go to ‘Advanced‘ tab and set ‘serverTimezone‘ prope

Server returns invalid timezone. Go to ‘Advanced’ tab and set ‘serverTimezone’ prope前进的道路永远充满荆棘。原文链接:https://yangman824.gitee.io/posts/mysqlConnection/错误界面IDEA连接mysql,地址,用户名,密码,数据库名,全都配置好了,点测试连接,咔!不成功!翻译一下就是:服务器返回无效的时区。到“高级”选项卡,手动设置“serverTimezone”属性

2022-03-02 09:55:34 147

原创 Vue造轮子之v-model

  最近在Vue官方文档看到自定义事件的表单输入组件时,纠结了亿会儿才绕过弯,所以决定总结一下让自己思路更清晰。  了解过vue的都知道v-model是用于表单数据的双向绑定,但到底怎么实现的,可能有一部分人都答不上来了。今天我们就来聊一聊v-model双向数据绑定的原理及如何在组件上使用。v-model语法糖  v-model用于表单数据的双向绑定,但其实它本身就是一个语法糖,它背后完成了两个操作:...

2022-03-02 09:54:13 493

原创 用Vue-cli跑项目的时候报错:6 errors and 0 warnings potentially fixable with the `--fix` option.

  创建好Vue项目后,自己写了父子组件进行测试,没想到报错,直接给我搞得有点懵。不过看报错原因,八成是eslint搞得鬼说有六个错误警告 , 需要注意字符间距、还要加回车什么的, 但我找不到位置, 所以直接进行修复解决办法, 执行npm run lint --fix自动修复警告npm run lint --fix  这样就可以正常运行了……...

2022-03-01 22:18:14 2744

原创 【Windows】你没有权限打开该文件,请向文件的所有者或管理员申请权限

【Windows】你没有权限打开该文件,请向文件的所有者或管理员申请权限原文链接:https://yangman824.gitee.io/posts/windows/问题:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lZMpSi7B-1640160600075)(C:\Users\Sonder\AppData\Roaming\Typora\typora-user-images\image-20211220175325122.png)]解决方法:右键–属性–安全–编

2022-02-08 11:11:02 7552 1

原创 你真的了解JS的隐式类型转换么?

转换规则转string+连接字符串转number++, —自增运算符算术运算符±*/等关系运算符>< ==转boolean!!{},![]都为false空数组的toString为空字符串, 对象的为’[object, Object]’(先小后大)数据类型转换——+连接对于+连接字符串则直接调用toString方法console.log( 1 + "true" );//'ltrue'+连接数字作为运算符时, 会调用Number()转成数字再运算, 需要注意的是Num

2022-02-08 11:02:43 207

原创 下班前几分钟,我彻底搞懂了闭包

闭包闭包的本质就是在一个函数内部创建另一个函数。闭包的三个特性:函数嵌套函数函数内部可以引用函数外部的参数和变量参数和变量不会被垃圾回收机制回收为什么闭包可以延长变量的生命周期?  闭包在函数定义时就已经产生, 函数存在对外部作用域的引用, 外部函数执行完由于还有作用域被引用, 因此垃圾不会回收被引用的部分。回调函数一般都会产生闭包,因为其接收的参数为外部函数的作用域里的变量应用封装变量:把不需要暴露在全局的变量封装成“私有变量”// 一般借助立即执行函数, 执行时返回的函数

2022-02-07 22:20:55 673

原创 浅谈页面渲染的属性计算

  浏览器渲染html元素的前提条件就是该元素的所有CSS属性都有值,而一个元素,从所有CSS属性无值到有值的过程就叫属性计算过程。

2022-01-20 22:56:38 259

原创 ERROR 2003 (HY000): Can‘t connect to MySQL server on ‘localhost:3306‘ (10061)

ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost:3306’ (10061)  这周开始我们有两周的实训课,实训内容竟与Mysql有关,本来以为安装软件就是无脑安装,一直点next就行了,但这个软件硬生生搞了一个小时,阿巴阿巴……小炒面,我应该还能承受的来  mysql最详细安装过程  想要自定义密码启动mysql,但是在cmd中直接输入mysql -u root -p时出现了如下问题:[外链图片转存失败,源站可能有防盗链

2021-12-22 16:04:17 3107

原创 程序人生之新起点

新起点  努力奋斗一周,我自己搭建的个人博客Yang’s Blog终于面世了,说来也是……南啊。其实说实话搭建个博客要不了多长时间,但作为一个强迫症患者,总觉得自己哪里做的不够好,不是这难看就是那看的不顺眼,缝缝补补,终于要跟大家见面了。说实话,我还是挺激动的,毕竟自己亲手搞得,看它一点点长大,整天跟个老母亲一样,想让它再完善点,页面再好看点,优化再做到位点……每次看它好看一点,都忍不住再给它包装包装。虽然它现在还没有特别完美,也不是特别的优化,但我仍为自己感到骄傲和自豪,自己从中也学习到了好多知识,收获

2021-12-20 08:51:53 557 1

原创 Attempted import error: ‘Switch‘ is not exported from ‘react-router-dom‘.

SwitchV6.0以上的版本中Routes已经将Switch取代通常情况下,path和component是一一对应关系Switch可以提高路由匹配效率(单一匹配)路由的基本使用明确好界面中的导航区、展示区导航区的a标签改为Link标签<Link to='/xxxxx'>Demo</Link>//无高亮状态切换<NavLink to='/xxxxx'/>About</NavLink>//中间的标签元素可以使用<NavLink&gt

2021-12-05 16:22:32 1936

原创 程序人生之告别

  十二月,你好!时间又悄悄走过了一年。然而,十二月的回想和深思却远远还没有结束。似乎,一切都发生在这个季节,貌似也都结束在这个季节。十二月却让人换上了一种苍凉的心情。学习  十二月的到来意味着我们即将走向期末的战场,意味着一学期的即将结束,同时也意味着我们离实习又近了一步……  每天重复着几点一线的生活,对我来说早已习惯。没有习惯的只是那一本本没有学完的课本和即将到来的考试(四级、期末)。四级已经是二战了,虽然不知何时能过,但也只能是因为自己没做好准备。  一年一度的发现杯比赛又要开始了,跟以往不

2021-12-05 15:23:43 4764 2

原创 一分钟带你入门diffing

  diffing意为different,react、vue,都是先生成虚拟DOM之后,再转换为页面的真实DOM。DOM更新时,react会先与之前的虚拟DOM做对比,和之前一样的节点可复用,不会重新渲染;然而与之前不同的节点,则重新生成。这就是我们常说的DOM的diffing算法。react/vue中的key有什么作用?(key的内部原理是什么?)虚拟DOM中的key有什么作用:简单来说:key是虚拟DOM对象的标识,在更新显示时key起着极其重要的作用详细的说:当状态中的数据发生变化时,rea

2021-11-28 20:53:14 266

原创 程序人生之月记

  十一月已经进入尾声,即将到来的十二月又是一个新的开始,收拾好心情,重新出发。学习  这周对我来说算是不如意的一周,但人生不如意那么多,也不差这一次。上周发展对象考试结束,我本来还信誓旦旦的觉得自己稳了(这可不算自负,出于本能的自信罢了,考试的题不难都是背过的),周一成绩也如期出来了,大家差不多都过了。本来我以为预备已经是板上钉钉的事了,谁知半路杀出来个程咬金呢,可能是名额不够的原因吧,而且自己身上也没职务,没法让党组织看到我工作上的表现。不过下学期可以继续申报发展对象(因为这次考试过了下次就不需要考

2021-11-28 20:45:35 4139 4

原创 React/Vue跨域怎么解决

前置说明React本身只关注于界面,并不包含发送ajax请求的代码前端应用需要通过ajax请求与后台进行交互(json数据)react 应用中需要集成第三方ajax库或者自己封装常用的ajax请求Jquery比较重,如果需要另外引入不建议使用axios:轻量级,建议使用封装XmlHttpRequest对象的ajaxpromise风格可以用在浏览器端和node服务器端跨域  出于浏览器的同源策略限制。所谓同源(即指在同一个域)就是两个页面具有相同的协议(protocol),主机(

2021-11-20 17:06:27 198

原创 程序人生之周记

  不知不觉中十一月已然过半,告别了金秋的十月来到了充满寒意的十一月,上周周末的立冬就是冬天在向我们招手????学习  这周算法题写的就比较简单的,没有什么固定的套路,这里就不在赘述了。主要就是在学习React的时候,学会了几项新技能,说是新技能吧,它也不算是,还算之前es6的知识:reduce…赋值不使用额外的空间,交换数值中的两个数值对象解构赋值的嵌套模式  好久没写项目,差点给axios忘完了,真迷了……再接再励吧,等这周发展对象考试结束了,就开始准备四级了,希望这次能过,再不过大学

2021-11-14 17:50:05 5438 6

原创 书写人生一笔之立冬

  时间飞逝,开学已有一月之余。昨天还是暖阳的天气今天就下雪又刮风了,我猜测可能是因为今天立冬以后就要冷了吧????本来我们今天早上要进行体测,但由于天气原因顺延至下午3点,本来我还在为体测的各项进行担忧呢,到了那才发现也就不过如此(小吹一下,各位见谅)主要是体院登记成绩的学生没对我们太严格,不然就我们这一年半载不锻炼的身体,怎么可能各项都能过呢????感谢体院的美女帅哥们哈  十一月的到来也意味着 ’ 双十一 ’ 的来临,现在的人们大多都比较喜欢网购,作为网购的忠实粉丝儿,每年还是比较期待 ‘618、双

2021-11-07 20:32:00 3019

原创 1024,猿来等你

  今天又是一年一度的 “ 程序猿 ” 节日,2年前的今天还在疑惑到底为何把今天定为程序猿的节日,问了度娘才知道,1024是2的十次方,二进制计数的基本计量单位之一。针对程序猿经常周末加班与工作日熬夜的情况,部分互联网机构倡议每年的10月24日为1024程序猿节,在这一天建议程序猿拒绝加班。程序猿就像是一个个1024,以最低调、踏实、核心的功能模块搭建起这个科技世界。1G=1024M,而1G与1级谐音,也有一级棒的意思。学习  开学已经两周了,从线上教学变为课堂学习,不管从课堂氛围还是学习效果上都有了一

2021-10-24 14:59:10 123

原创 浅谈n&(n-1)

  在做算法题时,经常会发现大佬们都使用了n&(n-1),那么n&(n-1)到底有哪些用途呢?1.求一个int类型数是否为2的幂当n=4时,二进制为:0100n-1=3,二进制为:0011则:n&(n-1)==0当n=8时,为1000n-1=7,为0111则n&(n-1)==0再举个反例:当n=5,为0101n-1为0100则n&(n-1)=0100=4!=0从上面我们可以看出,凡是2的幂,均是二进制数的某一高位为1,且仅此高位

2021-09-26 23:37:20 636

原创 前端初学必会,你真的知道深浅拷贝么

arguments.callee  在函数内部有两个特殊对象:this和arguments,其中,arguments主要用于保存函数的参数,但这个对象还有一个名叫callee的属性,该属性是个指针,指向拥有这个arguments对象的函数。  arguments.callee一般用于递归算法,如果函数有名字,而且名字以后不会变的情况下直接递归调用函数即可。否则使用arguments.callee较好。function factorial(num){ if (num <=1) {

2021-09-21 21:18:45 244

原创 浅谈arguments.callee

  在函数内部有两个特殊对象:this和arguments,其中,arguments主要用于保存函数的参数,但这个对象还有一个名叫callee的属性,该属性是个指针,指向拥有这个arguments对象的函数。  arguments.callee一般用于递归算法,如果函数有名字,而且名字以后不会变的情况下直接递归调用函数即可。否则使用arguments.callee较好。function factorial(num){ if (num <=1) { retu

2021-08-15 22:33:20 924

原创 [Vue warn]: Error in v-on handler (Promise/async): “NavigationDuplicated: Navigating to current loca

场景  运用编程式路由导航,处在当前路由状态下,进行二次跳转(一直点击同一个按钮)时会报错 [Vue warn]: Error in v-on handler (Promise/async): "NavigationDuplicated: Navigating to current loca解决办法使用onComplete()、onAbort()this.$router.push({ path: ‘/XXX’ },onComplete => {},onAbort => {}) 

2021-08-08 17:55:27 1675 1

原创 零基础让你迅速了解node项目流程

项目初始化创建文件夹npm init -ypublic 用来存放静态资源(css、js、html)views 视图,用来存放页面(.html、.ejs)router 存放路由app.js 入口文件创建app.js基本框架 (node的app.js文件配置流程)引入模块let express=require("express");let app=express()let bodyPaser=require("body-parser");let cookieP

2021-08-01 17:44:28 225 1

原创 剑指 Offer 11. 旋转数组的最小数字_JavaScript

  把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素。例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的一个旋转,该数组的最小值为1。示例 1: 输入:[3,4,5,1,2] 输出:1示例 2: 输入:[2,2,2,0,1] 输出:0题目分析  由题意可得,旋转数组就是讲原数组分为左右两部分单独进行旋转后得到的数组,具体如下图所示,寻找旋转数组的最小元素即为寻找右排序数组的首个元素numbers[x],

2021-07-26 09:16:31 110

原创 你真的了解assets和static么

  用过的大部分人都知道,assets和static都用于在Vue中存储静态资源,那两者有何区别呢?相同点assets 和 static 两个都是用来存放静态资源文件;项目中所需要的资源文件图片、字体图标、样式文件等都可以放在这两个目录下不同点assets 中存放的静态资源文件在项目打包时,即:在运行 npm run build 时,会将 assets 中放置的静态资源文件进行打包上传(所谓打包,简单点可以理解为压缩体积、代码格式化),而压缩后的静态资源文件最终也都会放置在 static 目

2021-06-06 16:07:52 332

原创 五分钟,零基础教你学会查找开源项目

  如果作为一名程序猿,连GitHub都没有听过或者用过的话,那真是太遗憾了。GitHub的使用可是程序猿在职业生涯中的一项必备技能。那么今天我们今天就来一起探讨一下关于GitHub的话题——如何高效地在GitHub上发现开源项目。  其实查找的关键点是记住以下几个命令:in:name XXX //名字中包含'xxx'in:readme xxx //readme中包含'xxx'in:description xxx //在描述中包含'xxx' stars:>3000 //stars大于3.

2021-06-04 08:44:16 1155

原创 程序人生

  时间转瞬即逝,突然发现自己好像已经半个月没有进行总结了,前一段时间一直在为蓝桥杯做准备,终于在4月18日进行了第十二届蓝桥杯比赛。这是我第二次参加这个比赛,怎么说呢,跟去年第一次参加比赛相比的话,我觉得我的算法能力并没有多大改变,这主要是我自身的原因,平常没在算法上面花费太多时间,可能就是赛前突击一下,”临阵磨枪,不快也光”嘛。其实我最关心的是中午的那顿所谓300块钱的美食,嘿嘿嘿????,默默地只想给火腿差评,没有去年的大。生活小事  随着时间的推移,4月已经进入了尾声,马上就要迎来5.1年会了

2021-04-25 17:50:20 64

原创 ‘webpack-dev-server‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。

  使用vue-cli创建项目时,项目初始化完成后执行npm run dev命令时报错:‘webpack-dev-server’ 不是内部或外部命令,也不是可运行的程序 或批处理文件。如图所示:  起初我试着重新装 webpack-dev-server,然而装完之后会有一个一个的依赖接踵而来。查询百度后发现有一篇好的解决方案,分享给大家 原文第一种方法:  通常这种问题就是缺少依赖,尝试进行npm install 或 cnpm install进行重新下载,如果还是不可以就尝试第二种方法。最好npm和

2021-03-17 15:11:01 906

原创 vue-cli Failed to download repo vuejs-templates/webpack解决办法

  安装vue脚手架时,使用工具命令vue init webpack vue1创建vue项目的时候报错,提示连接超时,应该是下载某个package的时候,需要翻墙,导致出现连接超时。超时错误截图如下:  根据百度搜索结果,解决的办法就是离线创建。我们需要从github仓库中下载vue-templates/webpack,然后解压到本地。下载地址:https://github.com/vuejs-templates/webpack 。  国内网络不太稳定可能造成无法访问:https://pan.baid

2021-03-17 14:41:09 10081 4

原创 原型、原型链都不知道还怎么指望大厂

文章目录什么是原型?没有原型的对象自定义对象的原型prototype和__proto__的区别什么是原型链?原型方法与对象方法优先级什么是原型?  Javascript 只有一种结构,那就是:对象。在 javaScript 中,每个对象都有一个指向它的原型(prototype)对象的内部链接。这个原型对象又有自己的原型,直到某个对象(Object)的原型为 null 为止(也就是不再有原型指向),组成这条链的最后一环。这种一级一级的链结构就称为原型链。  通过下面的代码我们一起来认识一下原型: //

2021-01-29 22:37:03 802 1

原创 浅谈null和undefined

1. 定义  undefined是指声明的对象没有进行赋值,系统给的默认值,当typeof一个没有值的变量时会返回undefined例如:var a; //a自动被赋值为undefined  null表示”什么都没有“,指主动释放变量引用的对象,表示一个变量不在指想任何引用地址(释放内存)例如:var emps = [‘ss’,‘nn’];emps = null; //释放指向数组的引用2. 异同点相同点:null和undefined的值相等 ,但是类型不同  由上

2021-01-29 10:49:49 466

原创 浅谈JavaScript对象

  学过JavaScript基础部分后,接下来我们要接触和了解的就是JavaScript高级,这也是JavaScript中最重要的部分。为何说它重要?因为在大厂的面试中手写JavaScript是不可避免的,甚至会问一些关于JavaScript高级的知识点。要想真正搞懂这个东西我们必须从基础部分下手,首先就是JavaScript对象。什么是对象?  学习了这么多基础内容,那到底什么是对象呢?简单来说,对象就是带有属性和方法的特殊数据类型。例如:String、Date、Array…这些其实就是JavaScr

2021-01-28 22:28:29 148

空空如也

空空如也

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

TA关注的人

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