自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 InstanceType获取组件实例类型编译不通过

项目场景:Vue3 + TS 后台管理系统问题描述ref<InstanceType<typeof LoginAccount>>() 代码编译不通过,出现红色下划线。原因分析:在网上浏览帖子,说是要使用defineComponent这个函数包裹默认导出的对象,但事实上我的代码里已经这样做了,但还是编译不通过。后面每行代码看了下,发现我没有标注语言使用ts,在script 标签上写明使用ts语言,即<script lang=“ts”>,编译就没问题了。我还把de

2022-04-16 19:22:23 2739 2

原创 leetcode的20题:有效的括号

题目描述给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。提示:1 <= s.length <= 10^4s 仅由括号 ‘()[]{}’ 组成示例 1:输入:s = “()”输出:true示例 2:输入:s = “()[]{}”输出:true示例 3:输入:s = “(]”输出:false示例 4:输入:s = “([)]”输出:

2021-03-12 00:18:28 213

原创 react项目中<img />标签引入图片方式

问题描述在react 项目中,当我向通过img标签的src属性引入图片时,发现我写的相对路径经过页面渲染后变成了相对于项目的根目录路径。如下图:项目中我引入图片的方式页面渲染出来后src里的路径从上面的两张图中我们可以看出,img的相对路径并不像我们想象中的那样,它相对的是项目的根目录,所以我的照片自然找不到路径而不能正常渲染出来。解决方法写在最后: 如有错误,欢迎指正...

2021-01-23 19:21:15 4123 1

原创 react-redux中Action是怎么和Reducer匹配上的

只要有Action被react-redux分发(dispatch),所有的 reducer 都会收到 action,而reducer 则通过 action.type 来进行判定处理。如果 reducer 不处理这个动作,也就是没有处理这个 action.type 的 case, 就会走 default 分支。因此,在default分支通常会把 state 原样返回。...

2021-01-17 22:04:00 635

原创 使用react-redux,数据已改变,但页面未同步更新

问题描述在使用react-redux中,reducer的数据明明已经更改了,但是却不能触发组件的render函数,页面也没有同步更新。看了网上的一些答案,才知道在reducer中一般不对前一个状态preState进行数据上的操作,因为当你返回preState时,react-redux并不知道数据已经更改(preState是对象引用,始终指向一个地址),而我在这里对preState进行了push操作,并把操作后的preState返回。解决方法改正后的代码如下:写在最后:若有误,请指正。...

2021-01-17 21:50:45 4038

原创 百度amis报Legacy context API has been detected within a strict-mode tree.

将react项目中的入口文件index.js里面的React.StrictMode开启严格模式标签去掉就可以了

2021-01-16 11:03:27 787

原创 百度amis报unabled to find node on an unmounted component

在react项目中使用amis的部分组件时(例如:form)报了这个错误。后来发现是版本问题,我的react项目里的react和react-dom的版本都是17的,而amis目前还不兼容17版本的react,所以将react和react-dom的版本换成16就可以了。...

2021-01-15 23:28:35 678

原创 谈谈Vue中对“插槽不是响应性的”这句话的理解

业务场景注意到这句话是因为我在业务中遇上了点麻烦,类似上图,我有一个容器box组件,里面分为header和container,header可以通过label属性进行文字的定制,而container部分则放了个插槽标签,因此可在标签体(以下简称标签体)内传入内容。现在的业务要求是,如果我给box组件传入hidden=“true”,并且标签体里面没有任何东西,则整个box组件都不显示(hidden默认为false,标签体没有数据时,box正常显示)。为了实现这个效果,我在box组件最外层的div增加了

2021-01-14 23:43:50 1441 3

原创 leetcode的14题:最长公共前缀

题目描述编写一个函数来查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 “”。示例 1:输入: [“flower”,“flow”,“flight”]输出: “fl”示例 2:输入: [“dog”,“racecar”,“car”]输出: “”解释: 输入不存在公共前缀。说明:所有输入只包含小写字母 a-z 。解题思路先拿出一个字符串,然后取这个字符串的头一个字母,例如a,判断数组内其他字符串是否以这个字母开头,不是的话直接返回空字符串“”,是的话拿出字符串的头两个字符

2020-12-27 14:33:15 133

原创 Promise专题之手撕部分实现

Promise的几个关键问题一、如何改变promise的状态?调用resolve(value),状态由pending改为resolved调用reject(value),状态由pending改为rejected使用throw抛出异常,状态又pending改为rejected二、一个promise指定多个成功/失败回调函数,都会调用吗?当promise改变为对应状态时都会调用三、改变promise状态和指定回调函数谁先谁后?指定回调函数,主要是then或catch方法的调用,而不是回调

2020-12-26 13:52:11 128

原创 配置webpack的externals出现Vue is not defined的问题

场景当在优化项目的时候,因为打包出来的chunk-vendors体积太大,这是因为在项目中使用到的依赖和插件都默认打包到该文件当中,为缩小它的体积,优化页面加载速度,对插件和依赖采用外部CDN加载,这个时候就需要配置webpack的externals节点,并且在项目的index.html中有问题与解决我所遇到的问题是,在配置完externals节点之后,项目无法启动,控制台打印出了Vue is not defined的错误,其中vue就是我配置的其中一个,经过检查,我才发现,我将externals节点进

2020-12-23 21:32:24 5608 1

原创 javascript实现稀疏数组和普通二维数组的相互转换

场景棋盘游戏中,往往需要进行存档和读档,当棋盘上的棋子较多时,使用二维数组存储棋盘上棋子的位置和数量是一个不错的选择,但是,但棋子较少时,再用二维数组存储就比较浪费空间,这个时候就可以用稀疏数组来进行保存。什么是稀疏数组稀疏数组是一个有规定数据存储结构的二维数组,主要用来记录类似上面一个大部分元素为0或同一个值(以下统称为不为0)的二维数组,每一个稀疏数组的列数只有3列,行数则由有多少个不同的数决定。它的第一行记录了二维数组的行数,列数,不为0的个数,从第二列开始则记录各个不为0数的位置(行和列)和

2020-12-23 00:15:03 204

原创 vue中使用Echarts时初始化init方法找不到

问题今天在使用Echarts绘制图表时,发现在使用的过程中出现了下列的错误解决先确认是否正确安装和引入Echarts,具体可以看官网Echarts入门教程,如果安装和引入没有问题,尝试使用低版本的Echarts,我今天使用的最新版本就出现这种问题,换了低版本就可以了。怎么查看Echarts版本,看这里我的问题也是看了他的博客解决的...

2020-12-22 23:25:04 4834

原创 leetcode的13题:罗马数字转整数

题目描述罗马数字转整数点击上方链接即可到达题目解题思路首先我们需要一个能将字母转换成数字的方法,接着我分析了罗马数字拼接的规律,发现如果重个位数出发(个位数一定为正值),当左边的数如果大于或等于右边的数,那么左边数就为正值,例如:VI,左V比右I大,所以V为正值,VI就等于每个值相加的和,即V+I=5+1=6,当左边的数如果小于右边的数,那么右边的数就为负值,例如:IV,左I比右V小,所以这里的I为负值-1,所以IV=(-1)+5=4,这样看来只需要判断每个位置的正负值情况,再将每个值相加就等于这

2020-12-22 21:52:43 87

原创 leetcode的第9题:回文数

题目描述判断一个整数是否是回文数。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数示例 1:输入: 121输出: true示例 2:输入: -121输出: false解释: 从左向右读, 为 -121 。 从右向左读, 为 121- 。因此它不是一个回文数。示例 3:输入: 10输出: false解释: 从右向左读, 为 01 。因此它不是一个回文数。解题思路先排除几种特殊的情况,负数不可能是回文数,个位数为0的非零数字不是回文数,0为回文数思路一将传入的数字转换

2020-12-19 21:48:50 319 2

原创 leetcode的第7题:整数反转

题目描述给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。示例 1:输入: 123输出: 321示例 2:输入: -123输出: -321示例 3:输入: 120输出: 21注:假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−2^31, 2^31 − 1]。请根据这个假设,如果反转后整数溢出那么就返回 0。解题思路“翻转”两个字提醒了我一个数组方法reverse(),因此我以此为出发点进行分析,首先需判断传入的数字是正数还是负数,如果为

2020-12-18 21:39:06 164 1

原创 leetcode的第一题:求两数之和

题目描述给定一个整数数组 nums 和一个目标值 target,请你在该数组中找出和为目标值的那 两个 整数,并返回他们的数组下标。你可以假设每种输入只会对应一个答案。但是,数组中同一个元素不能使用两遍。示例给定 nums = [2, 7, 11, 15], target = 9因为 nums[0] + nums[1] = 2 + 7 = 9所以返回 [0, 1]解题思路for in循环遍历数组sums,然后在每项数字num都在sums数组中查找符合target-num的下标值,然后将该下标

2020-12-17 20:25:19 113

原创 mint-ui官网无法打开的解决方法

看了网上的解决方案,大体有两种,一种是将http协议更改为https协议,即mint-ui官方地址,今天就说说第二种方式step1:前往“站长工具”查询mint-ui.github.io的DNS站长工具路径step2:找到TTL值最小的那个的ip地址 和 unit-ui的网址对应关系,配置到hosts文件中step3:修改hosts配置文件如下,该另外一种就是修改hosts文件,该文件本地上的地址一般为C:\Windows\System32\drivers\etc但是在这个过程中,可能会出现hos

2020-11-03 17:26:54 2339

原创 从单向链表结构看空间复杂度换时间复杂度

最近在复习数据结构,在手写单向链表结构的时候,清晰的感觉到一个合理的数据结构在使用起来,真的事半功倍。下面就我自己的感受说说我对内存空间换取降低操作数据时的时间复杂度的一点浅见。首先单向链表的结构可以简单的表示为:头结点是节点1的引用,而节点1的next属性又是节点2的应用,以此类推,最后一个节点的next属性则指向一个空对象。在手写该链表的append(data)方法时,我首先需要根据data创建一个新节点newNode(属性next默认为null),data就是上图所示的item,然后我需要找到

2020-08-01 23:51:09 1454 1

原创 微信小程序scroll-view组件scroll-top设置后无效

引用scroll-view视图容器<scroll-view class="right-content" scroll-y scroll-top="{{backTop}}">内容</scroll-view>在js文件中定义backtop变量data: { // 设置每次切换分类从头开始浏览 backTop: 0 }做了以上的工作后发现并没有像预期的一样,后来看了网上的几篇文章,说是在backTop的值没改变的情况下,微信小程序自带的框架出于性能的考

2020-07-26 16:01:37 1745 3

原创 Vue中在mounted中能获取this.$refs但是获取不到属性的一种情况(路由懒加载)

一、问题描述 在Vue中的组件钩子函数mounted中,通过this.$refs无法获取某个组件,且该组件没有用到v-for、v-if、v-show等vue指令<!--组件标签--><scroll class="content"ref="scroll"></scroll><!--组件脚本-->export default { mounted() { console.log(this.$refs); }}输出结果:可以看到t.

2020-07-17 01:26:29 10477 2

原创 使用gulp命令执行文件时结尾是The following tasks did not complete: copy [11:33:00] Did you forget to signal async

按照提示,需要一个信号来确认你的命令已经执行完毕了;所以可以返回一个回调函数,gulp会自动将这个回调函数作为一个参数返回到任务中,在完成的时候一定要调用这个函数。如下:gulp.task('default', gulp.series('server', (done) => done()));若该方法还解决不了你的问题,请查看本文方法取于这...

2020-05-29 11:46:49 542

原创 redis-desktop-manager无法连接redis-server的解决方法

检查Linux是否是否开启所需端口,默认为6379,若未打开,将其开启:以root用户执行iptables -I INPUT -p tcp --dport 6379 -j ACCEPT如果还是未能解决,修改redis.conf,修改主机地址:bind 192.168.85.**;然后使用该配置文件,重新启动Redis服务./redis-server redis.conf...

2019-03-31 17:34:54 848

原创 访问服务器出现406问题

解决方式1、查看Jackson包是否存在2、如果url后缀是.html是不能响应json数据的,需要修改后缀名

2019-03-31 13:32:11 1583

原创 使用httpClient模拟浏览器发送请求

使用httpClient发送无参数get请求,代码如下 //创建一个httpClient对象 CloseableHttpClient httpClient=HttpClients.createDefault(); //创建一个Get对象 HttpGet get=new HttpGet("http://www.sogou.com"); //执行请求 CloseableHt...

2019-03-31 01:50:07 1718

原创 springMVC使用@ResponseBody响应乱码的解决方法

解决方法一:可以在controller中获取response对象,然后进行响应编码的设置解决方法二:设置springMVC的@RequestMapper中produces属性,代码如下@RequestMapping(value="/itemcat/list",produces=MediaType.APPLICATION_JSON_VALUE+";charset=utf-8")...

2019-03-29 22:59:02 226

原创 eclipse中使用ftp上传图片,图片大小为零的解决方法

问题描述使用ftpClient上传图片时,上传成功,但文件的大小却为零,不能打开,使用浏览器访问时出现404找不到资源的错误问题原因一、FTP文件目录空间达到上限二、网络策略变更造成,被防火墙拦截解决方案FTP协议有两种工作方式:1.PORT方式2.PASV方式默认为PORT方式,修改为PASV方式,目前问题解决。实现代码`package com.taot...

2019-03-27 17:42:00 473

转载 classpath 和 classpath*的 区别

classpath:只会到你的class路径中查找找文件;classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找。当项目中有多个classpath路径,并同时加载多个classpath路径下(此种情况多数不会遇到)的文件,就发挥了作用,如果不加,则表示仅仅加载第一个classpath路径;如果要加载的资源, 不在当前ClassLoader的路径里,那么用cl...

2019-03-13 02:06:52 76

原创 SpringMVC之上传图片

第一步,导入Jar包 commons-fileupload-1.2.2.jar commons-io-2.4.jar第二部,配置解析器 在springl中配置解析器 &lt;bean id="multipartResolver"class=“org.springframework.web.multipart.commoms.CommomsMultipa...

2019-03-11 02:34:56 97

空空如也

空空如也

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

TA关注的人

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