自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

lxh的博客

记录总结学习内容

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

原创 TypeScript (一)运行环境配置,数据类型,可选类型,联合类型,type与interface,交叉类型,断言as,字面量类型,类型缩小

TS数据类型,type与interface,交叉类型,断言,字面量

2024-12-03 20:51:31 876

原创 GIt (一) Git的安装,项目搭建,远程仓库,分支

Git的安装、使用、分支、远程仓库、远程分支

2024-12-03 20:10:35 1143

原创 Redux (九) Hook,自定义Hook,Redux中的Hook

Hook

2024-10-27 15:54:36 1133

原创 Redux (八) 路由React-router、嵌套路由、路由传参、路由懒加载

react-router的基本使用;嵌套路由; useNavigate实现手动跳转路由;路由传参;路由懒加载

2024-10-20 22:46:32 1317

原创 React (七) Redux基本使用、react-redux简化代码、Redux Toolkit的使用。

Redux基本使用,react-redux简化代码,重点是connect(); RTK的使用,中间件thunk

2024-10-20 21:42:29 1058

原创 React(六) 过渡动画,CSSMoudle写法,styled-components用法;React动态添加class

过渡动画、CSS in JS:styled-components

2024-10-17 12:26:02 1276

原创 React(五) 受控组件和非受控组件; 获取表单元素的值。高阶组件(重点),Portals; Fragment组件;严格模式StrictMode

获取表单元素的值;高阶组件(本质是函数)及其应用;Portals;Fragment组件;StrictMode严格模式。

2024-10-16 12:11:51 1432

原创 React(四) 事件总线,setState的原理,PureComponent优化React性能,ref获取类组件与函数组件

setState的三种用法,setState为什么要设置成异步调用。PureComponent优化render性能,浅层监测;memo;ref获取类组件与函数组件实例

2024-10-16 09:32:06 1336

原创 React (三) 创建安装脚手架,类组件与函数式组件;生命周期;父子通信props;插槽;非父子通信Context

创建类组件与函数式组件,render函数的返回值;组件生命周期;父子组件通信props;React实现插槽效果的两种方式;非父子通信Context.

2024-10-13 16:04:53 1485

原创 React(二) JSX中的this绑定问题;事件对象参数传递;条件渲染;列表渲染;JSX本质;购物车案例

JSX语法:JSX中的this绑定问题;事件对象参数传递;条件渲染;列表渲染;JSX本质;购物车案例

2024-10-11 21:20:42 1458 2

原创 React(一) 认识React、熟悉类组件、JSX书写规范、嵌入变量表达式、绑定属性

认识React,JSX规范及注释,JSX嵌入变量作为子元素、JSX嵌入表达式、JSX绑定属性,class样式、style样式

2024-10-10 11:17:24 1025

原创 Vue2电商项目(八) 完结撒花:图片懒加载、路由懒加载、打包的map文件

(弹幕建议按1.3版本)引入使用v-lazy以Search页面展示商品图片为例,当网速较慢,请求数据还会获取到时,商品图片默认显示的是。

2024-10-07 17:54:16 543

原创 Vue2电商项目(七)、订单与支付

① 展示二维码。QRcode可以在npm官网搜索QRcode;引入及使用// 生成二维码,let url = await QRcode.toDataURL(this.payInfo.codeUrl) //这个url就是图片地址② 获取订单支付状态reqPaymentState接口// 查询支付订单状态 /api/payment/weixin/queryPayStatus/{orderId}${

2024-10-07 17:53:56 877

原创 Vue2电商平台(六)、注册登录,请求头配置token,token持久化存储;导航守卫(重点);组件内守卫、路由独享守卫

无论跳转哪个页面,即使是Search页面,如果没有用户信息,就会发起请求,获取数据并放到仓库重。而在刚进入网站时,路由重定向的就是首页,所以刚进入网站时,就会有一个。数据清空,而Home页重新加载,仍旧发请求获取用户信息,没有token所以会报错。: 在刚进入网站时,重定向到首页,首页会请求用户信息,若此时还未登录,则没有token,请求会报错。本系统就先不弄表单验证了。如果不携带token,发送获取用户信息的请求时,服务器的返回结果是。,但是Search模块并不会发送请求,所以页面的用户信息还是会丢失。

2024-10-07 17:52:28 921 1

原创 Vue2电商平台(五)、加入购物车,购物车页面

进入购物车页面时,应将用户的id传给后端,后端根据用户id检索出该用户的购物车商品信息,传递给前端用于展示及进行其他操作。由于没有修改多个商品的接口,所以思路是多次调用打勾单个商品的接口,把每个商品的勾选状态改为当前全选框的状态。所以如果只将输入框里的最终数量传过去的话,商品数量只会是最后一次将该商品添加到购物车里时的选择的数量。因为在购物车页面,其他的操作也会重新向服务器发请求,所以这里将放请求的操作包装成一个函数。没有删除多个商品的接口,所以思路是多次调用删除单个商品的接口,将选中的商品全都删除。

2024-10-07 17:50:34 1723

原创 Vue3(六)、其他API,Vue3组件Teleport ,Suspense;全局API转移到应用对象;Vue3非兼容性改变

通过使用 shallowRef()和 shallowReactive()来绕开深度响应。浅层式。

2024-09-28 10:57:50 965

原创 Vue3(五) 组件通信大汇总

props;自定义事件;插槽slot;这几个和Vue2区别不大;Vue3的mitt,v-model(重点),$attrs,$refs与$parent; provide与inject;pinia

2024-09-27 23:30:24 1123 1

原创 vue3(四)、Pinia(集中式数据管理,类似于Vue2的vuex)

搭建pinia并准备案例。pinia存储数据(state是个函数),读取数据;修改store数据的三种方式;actions的方法如何调用;配置getters并读取getters数据。storeRefj将state数据转化为响应式数据。$subscribe监听数据。pinia的组合式写法

2024-09-27 10:19:17 887

原创 Vue3(三)路由基本使用、工作模式(history,hash)、query传参和param传参、props配置、编程式路由导航

和vue2区别不大,就是一些语法不太一样了。$route和$router变成两个hook。

2024-09-27 09:15:56 1421

原创 Vue2电商项目(四) Detail模块

路由配置文件拆分;解决跳转页面时滚动条还在下方。放大镜及下方轮播图:读取vuex数据的经典错误undefined;选择售卖属性:排他思想;购买产品个数的加减操作。

2024-09-24 09:04:40 1122

原创 Vue3(二)计算属性Computed,监视属性watch,watchEffect,标签的ref属性,propos属性,生命周期,自定义hook

计算属性computed:简写+完整写法;监视属性watch的五种情况,最后总结了什么情况下是默认开启深度监听,什么情况需要手动开始深度监听;watchEffect没什么重点;标签的ref属性:用在普通标签上是打标识(很神奇),用在组件标签上可以实现组件传值。propos实现父给子传值,重要!;生命周期没啥好说的;自定义hook真正体现了组合式API的风格

2024-09-23 22:06:56 1310 3

原创 Vue3(一) Vite创建Vue3工程,选项式API与组合式API;setup的使用;Vue中的响应式ref,reactive

选项式API与组合式API的对比;setup的使用,语法糖;setup与选项式API的使用。Vue中创建响应式数ref,reactive。toRef与toRefs

2024-09-19 14:39:23 1349

原创 AJAX(一)HTTP协议(请求响应报文),AJAX发送请求,请求问题处理

原生AJAX发送Get,Post请求。响应JSON数据的两种方式。如何捕获AJAX请求超时与网络异常的清空。abort函数取消请求。解决请求重复发送的问题

2024-09-17 14:30:35 1754

原创 Vue2电商平台项目 (三) Search模块、面包屑(页面自己跳自己)、排序、分页器!

Search模块:需要注意在读取vuex数据时,要给一个空的值,以防undefined的错误;Object.assign整理参数;面包屑模块:search页面自己跳自己。排序模块:绑定class样式;分页器模块:全是重点,好好看一下

2024-09-16 19:26:19 1324

原创 JS高级(三)、深浅拷贝,异常处理,this指向总结,改变this指向;节流和防抖

浅拷贝:object.assign(),解构赋值;深拷贝:递归函数,lodash库的cloneDeep,JSON字符串处理。异常处理(throw, try catch finally)。this指向总结及改变this指向;节流、防抖

2024-09-16 17:19:19 774

原创 JS高级(二)、深入对象:构造函数;Object,Array,String,Number包装类;原型对象,原型链

深度对象:构造函数、实例成员、静态成员;包装类:Object、Array、String、Number的一些方法;原型,原型继承,原型链。prototype原型对象,__ptoto__对象原型。

2024-09-16 16:54:46 813

原创 JS高级(一)、 变量作用域、JS垃圾回收机制;闭包;函数参数;箭头函数(this);解构赋值

作用域链,剩余参数,扩展运算符,

2024-09-09 08:58:56 1078

原创 Vue2电商项目(二) Home模块的开发

1.事件委托是把全部的子节点【h3、dt、dl】的事件都委派给父节点,如何确定点击的一定是a标签呢2.即使确定点击的是a标签,如何区分是一级、二级、三级分类的标签。解决方法:采用自定义属性WebAPI(一)、自定义属性给a标签加上自定义属性,通过获取到这些自定义属性选择div父节点,绑定点击事件// 跳转search页面// 解构赋值,只有a标签才有这些自定义属性// 组装参数// 当前这个if语句:一定是a标签才会进入if (category1id) { // 一定是a标签:一级分类。

2024-09-07 08:51:17 855

原创 WebAPI(四) BOM;延时函数;JS执行机制(同步异步);location对象;history对象;navigation对象

异步任务交给异步API进行处理,这部分由浏览器负责,浏览器是多线程的,能够同时监听多个异步任务,看哪个异步任务满足执行条件,将满足执行条件的异步任务推入任务队列中,等待执行栈读取任务队列,执行事件。如果 JS 执行的时间过长,这样就会造成页面的渲染不连贯,导致页面渲染加载阻塞的感觉。比如监听点击事件,若点击事件触发,则将该异步任务推入任务队列中,延时函数等待的间隔事件达到3秒了,该异步任务也会推入任务队列中。有,则读入执行栈中执行。首先执行栈中的同步任务,执行完毕,会按次序读取任务队列中的异步任务。

2024-09-07 08:44:32 1229

原创 WebAPI(三)、 DOM 日期对象Date;获取事件戳;根据节点关系查找节点

删除节点和隐藏节点(display:none)区别: 隐藏节点还是存在的,但是删除,则从html中删除节点。// 2.2 追加在某个位置 insertBefore('要插入的元素',位置)// 1.2 获得所有子元素的children元素节点。日期对象就是用来表示时间的对象,可以得到当前的时间。dom树里有不同类型的节点,重点关注元素节点。,返回最近一级的父节点,找不到返回null。, 仅获得所有元素节点,返回的是一个伪数组。: 这个方法无法返回指定时间的时间戳,:可返回指定时间的时间戳—

2024-09-07 08:44:15 1203

原创 WebAPI(二)、DOM事件监听、事件对象event、事件流、事件委托、页面加载与滚动事件、client,offset

DOM事件监听;事件类型:鼠标事件、焦点事件、键盘事件、文本事件;事件对象event;环境对象this;回调函数的定义;事件流、事件委托,其他事件:load、scroll;页面尺寸事件。

2024-09-06 22:41:07 1212

原创 WebAPI (一)DOM树、DOM对象,操作元素样式(style className,classList)。表单元素属性。自定义属性。间歇函数定时器

获取DOM对象;操作元素内容、属性,通过style、类名className、classList控制CSS。操作表单元素属性,自定义属性。定时器setInterval。

2024-09-06 16:39:50 1662

原创 Vue2电商项目平台(一) 项目初始化及路由搭建

项目初始化,创建路由组件,配置路由器,通过路由元meta信息来控制Footer组件的显示与隐藏。Header组件的编程式路由导航

2024-09-05 10:53:24 1252

原创 Vue(十三) 路由、路由嵌套、query、param传参、propos、replace属性。编程式路由导航,特有的生命周期函数,路由守卫

路由的基本使用、路由嵌套、传参、命名、propos和replace两个属性。编程式路由导航。缓存路由组件,路由组件两个特有的生命周期函数。路由守卫

2024-09-02 16:32:07 1585

原创 Vue(十二) Vuex、四个map方法的使用、Vuex模块化+namespace命名空间

搭建Vuex的环境、Vuex的原理图、基本使用。以求和案例为基础,说明Vuex四个map方法如何使用。以及如何模块化Vuex,模块化Vuex后如何读取数据

2024-09-02 16:29:58 1154

原创 Vue(十一)默认插槽、具名插槽、作用域插槽

默认插槽、具名插槽、作用域插槽

2024-09-02 16:25:47 1468 1

原创 Vue(十) 过渡动画、配置代理服务器,解决请求跨域的问题

Vue封装的过度与动画。还介绍了一个第三方动画库。并在Todo案例中应用了动画效果。为解决跨域问题,记录了两种配置代理服务器的方式。github案例应用axios发送请求。es6的解构赋值

2024-09-02 16:24:11 1789

原创 Vue(九) 全局事件总线、Todo案例应用全局事件总线、消息订阅与发布、Todo案例应用消息订阅、编辑Item、$nextTick

全局事件总线的安装、使用、解绑.Vue.prototype.$bus = this, this.$bus.$on(绑定事件)。...$emit(解绑事件)。消息订阅与发布:安装、订阅消息、取消订阅;$nextTick;

2024-09-02 09:37:56 1266 1

原创 Vue(八) localStorage、组件的自定义事件、Todo案例修改

localStorage事件,组件的自定义事件,两种绑定方式@/v-on, ref; 触发事件$emit; 解绑自定义事件,注意绑定事件时ref里的回调函数。组件采用原生事件需要用native修饰符

2024-08-31 17:34:46 1581

原创 Vue(七) TodoList案例1.0

拆分静态组件。展示动态数据:数据类型,数据放在那里。子组件给父组件通过props如何传值。勾选与取消勾选,不可直接修改props传递过来的值。删除todo。footer底部交互,计算属性set方法的用途。

2024-08-31 10:56:24 1867

空空如也

空空如也

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

TA关注的人

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