自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 TCP三次握手四次挥手及time_wait状态解析

如上图,在服务器端发送一个FIN时,客户端会处于time_wait状态。当处于time_wait状态时,我们无法创建新的连接,因为端口被占用。

2023-04-14 14:10:44 915 1

原创 Layui二级联动绑定数据

【代码】Layui二级联动绑定数据。

2023-03-20 14:53:24 410

原创 JS包含变量组合定义变量名

例如可能需要生成 data1,data2,data3... (后面的数字是根据定义的参数sum来的) 所以我的函数名,应该由 var "data_"+num =100;生成函数名与赋值,但这问题就来了。初始化变量时 等号左边是不允许是表达式的。所以在JS中使用 var "data"+num = 100 这种写法是有问题的。参数的不同而区分的。这就需要我定义一个var num =1,2,3,4,5,6,7去拼接一个共同的字符串data.今天在写js的时候碰到了问题,我有一个页面需要循环生成很多的变量。

2023-03-17 09:31:08 935

原创 VUE3使用pinia 状态管理

1 pinia 的理解在 vue 2.x 中,vuex是官方的状态管理库,并且 vue3 中也有对应的 vuex 版本。个人认为Pinia语法更加简洁,不必像 vuex 那样定义 state、mutations、actions、getters 等,实现了API 等方式返回状态和改变状态的方法。

2023-02-23 11:34:29 374 2

原创 天勤排序算法汇总

以升序为例,其执行流程可以概括为:每一趟选择当前所有子序列中的一个关键字(通常是第一个)作为枢轴,将子序列中比枢轴小的移到枢轴的前边,比枢轴大的移动到枢轴的后边;当本趟所有的子序列都被枢轴以上述规则划分完毕后会的到新的一组更短的子序列,它们成为下一趟划分的初始序列集。对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。复杂度最坏n^2,最好为n。每趟将一个待排序的关键字按照其值的大小插入到已经排好的部分有序序列的适当位置上,直到所有待排关键字都被插入到有序序列中为止,复杂度最坏n^2,最好为n。

2022-11-28 15:56:41 413

原创 SQL中case when then else end用法

case when then else end 可以理解为java的if-else if -else。可以理解为流程控制语句或条件控制语句。可以实现资料获取的时候,可以更多的条件和自定义逻辑。1.已知数据按照另外一种方式进行分组,分析。有如下数据:(为了看得更清楚,我并没有使用国家代码,而是直接用国家名作为primary key)国家(country)人口(population)中国600美国100加拿大100英国200法国300日本250德国200墨西哥50印度250根据这个国家人口数据,统计亚洲和

2022-07-12 09:15:51 32963

原创 Vue(element ui)中行操作row参数的使用

在使用element ui或Vue中当我们要对表格中的数据按行进行特殊操作或标记时,通常通过在vue中methods方法中操作row参数来访问该行的索引或是单元格中的数据进行对应操作。

2022-06-29 17:13:00 12136 2

原创 C#List<T>集合类

为了改变数组大小,必须创建新数组,复制数组元素(如果新数组较小,甚至还复制不完),然后更新对原始数组的引用,使其引用新数组。删除一个数组元素,之后所有元素都必须上移-一位。即使这样还是不好使,因为最后一个元素会产生两个拷贝。插入一个数组元素,必须使元素下移一位来腾出空位。但最后一个元素就丢失了!List集合类通过以下功能来避免这些限制。注意:同数组一样用foreach遍历List集合时,不能用循环变量修改集合内容。在遍历List的foreach循环中不能调用Remove, Add或Inse...

2022-06-20 10:14:59 630

原创 C#泛型使用

所谓泛型是指将类型参数化以达到代码复用提高软件开发工作效率的一种数据类型。 一种类型占位符,或称之为类型参数。我们知道一个方法中,一个变量的值可以作为参数,但其实这个变量的类型本身也可以作为参数。泛型允许我们在调用的时候再指定这个类型参数是什么。在.net中,泛型能够给我们带来的两个明显好处是——避免了强制类型转换,增强类型安全和减少装箱、拆箱。  通常一个方法或过程的参数都是有明确的数据类型的。  如 :  public void ProcessData(int i){}  pub

2022-06-17 14:51:53 665

原创 JQuery 属性操作 - attr() 方法

我们在JS中设置节点的属性与属性值用到setAttribute(),获得节点的属性与属性值需用getAttribute(),而在jquery中,用一个attr()就可以全部实现jquery中用attr()方法来获取和设置元素属性,attr是attribute(属性)的缩写,在jQuery DOM操作中会经常用到attr(),attr()有4个表达式。1. attr(属性名) //获取属性的值(取得第一个匹配元素的属性值。通过这个方法可以方便地从第一个匹配元素中获取一个属性的值。如果元素没有相应属性,则返回

2022-06-08 14:38:06 9798

原创 Vue中作用域插槽的使用

Vue中的作用域插槽可以让父组件使用插槽时的内容能够访问子组件中的数据,数据在组件自身,但是根据数据生成的结构需要组件的使用者来决定。这里可以先看一个例子,以便更好的理解作用域插槽的作用,在子组件中使用v-for创建一个列表循环,然后在父组件中通过子组件标签category调用,如下例。category子组件:<template> <div class="category"> <ul> <li v-for="(g,inde

2022-05-12 19:53:14 3755 1

原创 c#委托的使用

一、什么是委托?委托是一种动态调用方法的类型,属于引用型。委托是对方法的抽象和封装。委托对象实质上代表了方法的引用(即内存地址)。委托通常是委托某个方法来实现具体的功能。当我们调用委托的时候,委托包含的所有方法将被执行。虽然在定义委托时与方法有些相似,但我们不能将其称为方法。二、委托的定义1.delegate定义一个int返回值、带一个参数的委托:修饰符 delegate 返回值类型 委托名 ( 参数列表 );public delegate int TestDelegate(

2022-05-11 20:31:17 4652

原创 c#中虚方法和抽象方法的应用

一、抽象类它的作用就是产生子类的同时给于子类一些特定的属性和方法。abstract修饰符可以和类、方法、属性、索引器及事件一起使用。在类声明中使用abstract修饰符以指示某个类只能是其他类的父类。标记为抽象或包含在抽象类中的成员必须通过从抽象类的子类来实现。特点:抽象类不能实例化,抽象函数不能实现,必须在非抽象函数中重写。如果类包含抽象函数,那么类也是抽象的,必须声明为抽象的。...

2022-05-06 15:35:08 1255

原创 c#继承的构造函数问题

一、什么是继承,有什么作用?概念:​ 继承就是在类之间建立一种相交关系,使得新定义的派生类(子类)的实例可以继承已有的基类(父类)的特征和能力,而且可以加入新的特性或者是修改已有的特性建立起类的新层次。作用:​ 继承是面向对象的主要特征之一,它可以让你的代码重复使用,可以节省程序设计的时间,继承就是就是在类之间建立一种相交关系,使得新定义的派生类可以继承已有的基类的特征和能力,而且可以加入新的特性或者是修改已有的特性建立起类的新层次。说明:​ 比如:你继承了你爸爸的一些特征,你爸爸是基类,

2022-05-05 18:27:54 4702

原创 vuex中mapGetters,mapActions使用

vuex运行流程图如下1.Vue Components 是我们的 vue 组件,组件会触发(dispatch)一些事件或动作,也就是图中的 Actions2.我们在组件中发出的动作,肯定是想获取或者改变数据的,但是在 vuex 中,数据是集中管理的,我们不能直接去更改数据,所以会把这个动作提交(Commit)到 Mutations 中3.然后 Mutations 就去改变(Mutate)State 中的数据;4.当 State 中的数据被改变之后,就会重新渲染(Render)到 Vu

2022-04-27 22:10:13 2726

原创 vue中async和await异步编程

async&await是Promise的语法糖,使用他的目的就是用同步的写法,写异步的操作。async 是“异步”的简写, async 用于申明一个异步的 function,await 可以认为是 async wait 的简写,await 用于等待一个异步方法执行完成。当我们函数中需要返回值是promise对象时通常用async和await简化。async作为一个关键字放到函数之前,表示函数是异步的函数,异步函数也就意味着该函数的执行不会阻塞后面代码的执行,等as...

2022-04-21 21:33:57 5193 2

原创 Vue事件总线

1.常见的组件通信方式pros:父组件传子组件自定义事件:子组件传父组件vuex:均可实现插槽:父组件传子组件pubsub-js:均可实现(较少用)$bus全局事件总线:均可实现2.事件总线的介绍如果咱们的应用程序不需要类似Vuex这样的库来处理组件之间的数据通信,就可以考虑Vue中的事件总线来实现。塔相当于一个全局的仓库,任何组件都可以去这个仓库里获取事件,它就类似沟通桥梁的概念...

2022-04-18 16:58:56 6014 1

原创 vue中ref实现对dom的操作

1.获取页面中dom元素通过在元素标签中配置ref属性后,我们可以通过this.$refs.refname来获取dom元素<template> <div id="app"> <div ref="refname">123</div> <button @click="getTest">获取dom</button> </div></template><scr...

2022-04-14 19:47:51 3131 1

原创 HTML中块元素和行内元素对比

最近发现在很多面试中都是一道基础的面试题,当我们初学时可能平时只注重标签语义,忽视了标签行内和块级的特性。这里进行一个总结1.HTML常见的行内元素有:<span>、<a>、<br>、<b>、<strong>、<img>、<input>、<textarea>、<select>、<sup>、<sub>、<em>、<del>可以和其他元素同处一行

2022-04-13 22:09:44 126

原创 Vue中子组件调用父组件的三种方法

Vue中子组件调用父组件的三种方法:1.直接在子组件中通过“this.$parent.event”来调用父组件的方法。父组件<template> <div> <child></child> </div></template><script> import child from './components/childcomponent'; export default { co

2022-04-13 20:29:50 48948 3

原创 防抖与节流

1.函数防抖定义:当持续触发一个事件时,在n秒内,事件没有再次触发,此时才会执行回调;如果n秒内,又触发了事件,就重新计时只要最后一次操作,这样就防止了用户触发事件过于频繁的问题。这里列举几个场景:搜索框:防止用户不断输入过程中,不断请求资源,n秒内只发送1次,用防抖来节约资源按钮提交场景,比如点赞,表单提交等,防止多次提交。最常见的情况就是比如当我们在input框中传递数据时,不使用节流就会不断的发送数据请求,但是使用节流后,...

2022-04-12 22:16:15 396

原创 总结vue中的常用指令

1.v-model指令用于表单输入,实现表单控件和数据的双向绑定。一般在 <input>、<select>、<textarea>、组件中使用。<body> <div id="app"> <div>val的值:{{val}}</div> <input v-model="val"> </div></body><script&g

2022-04-10 23:23:11 1260

原创 Vue中的路由导航

一,声明式导航是写在template标签里,通过<router-link></router-link>标签来触发二,编程式导航通过组件实例this.$router.push(xxx)来触发路径实现路由跳转最常用的方法1) this.$router.push(path): 相当于点击路由链接(可以返回到当前路由界面) ==>> 队列的方式(先进先出)2) this.$router.replace(path): 用新路由替换当前路由(不可以返回到当前路由.

2022-04-09 23:45:21 1874

原创 原型对象与原型链的理解

原型 prototype:指我们所创建的每一个函数,解析器都会向函数中添加一个属性prototype,这个属性对应着一个对象,这个对象就是我们所谓的原型对象 ,如果函数作为普通函数调用prototype没有任何作用,当函数以构造函数的形式调用时,它所创建的对象中都会有一个隐含的属性,指向该构造函数的原型对象,我们可以通过_proto_来访问该属性原型对象就相当于一个公共的区域,所有同一个类的实例都可以访问到这个原型对象, 我们可以将对象中共有的内容,统一设置到原型对象中,当我们访问对象的一个...

2022-04-09 15:33:08 1058

原创 在Vue-cli脚手架中引入图片最常用的两种方法

CommonJS API定义了很多普通应用程序(主要指非浏览器的应用)使用的API,require就说其中之一,我们通常需要在组件中引入图片时,可以在Data里使用这个方法require(" ")这时只需要将标签里的src属性值改为data中的属性名就可以引入图片。总结了在Vue-cli脚手架中最常用的两种方法1.在.vue文件中import edit from 'path'(path是图片与.vue的相对路径),然后在template中给标签绑定属性<img src="edit"

2022-04-07 23:27:56 2123

原创 JavaScript中querySelector和getElementByld(getXXXBy XX)的区别

在日常开发中,我学使用原生JavaScript获取元素的时候,最常用的方法就document.getElementByld (getXXXByXX)方法。但是最近发 现有很多地方使用的是queryselector方法而不是使用前面的方法。去官方文档查看是这么说的: 文档对象模型Document引用的queryselector()方法返回文档中与指定选择器或选择器组匹配的第一个html元素Element。如果找不 到匹配项,则返回null。 这句话看意思和getElemen...

2022-04-07 22:51:55 1518

原创 Invalid prop: type check failed for prop “index“. Expected String with value “undefined“,

在引入ElementUI进行渲染时,在项目中用v-for的时候报了这个错,看到[Vue warn]基本上是Vue在处理数据的并且渲染到页面的组件上出现了错误。一般找不到在哪里报错,需要找到渲染的组件看看他的绑定值,尤其是index或者key有没有取不到的值这行中subindex中最终出现这样的问题,结果导致整个菜单框渲染报错。报错翻译:无效属性:属性“index”的类型检查失败。应为值为“undefined”的字符串,但未定义。将:index=“subIndex"或唯一路径inde.

2022-04-07 21:31:02 3958 1

空空如也

空空如也

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

TA关注的人

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