自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 微信小程序 《新闻列表》 案例

一,步骤。要求1:主页头部的轮播图要求2:中间内容上的信息案列排版。要求3:上拉加载内容。要求4:在信息加载完成后,给用户提示二,过程中要注意的几点。1.在微信小程序中,你用到wx:for 时。一定要绑定key 的值。2.我们在后端请求成功的时候。3.文档第一位

2023-02-28 10:12:20 1619

原创 git 拉取远程分支到本地

***!本小作者,是将终端和Git的可视化插件结合使用,刚接触的可以自行看一下,内容简单,避免弯路!***一,简单了解远程分支1,连接远程:2,提交(同步)远程二, git 拉取远程到本地-步骤:0,准备--基于vscode编辑器操作 - 和 - 初始化文件1,开始与远程仓库建立连接。2,根据上面操作。此时我们就可以跟远程仓库联系了,并且可以拉取到本地中操作。。。

2023-02-22 20:09:25 9656

原创 初识 git--本地仓库

一,基础步骤:1,安装2,配置3,检查配置4,创建仓库 - repository5,查看工作区的文件状态6,如果显示乱码的解决方式git status 显示乱码终端乱码7,添加工作区文件到暂存区8,提交备注9,查看提交日志10,修复提交11,删除12,撤销重置从暂存区中撤销到工作区该命令既可以用于回退版本13,比较14,分支查看分支创建分支切换分支分支合并删除分支合并记录合并 HEAD 前两个祖先记录合并冲突标签新建 tag查看 tag

2023-02-22 11:42:08 521

原创 使用vue3.0重构vue2.0 项目《后台管理系统》(二)

一,vue2.0 与vue3.0区别分析1.路由方面:引用方式变化 ,routes属性加入强制判断2.vue3.0支持碎片(一个组件中可以有多个根节点)3.数据和方法的定义4.生命周期函数等。。二,vue3.0重构Login.vue页面标明一些区别点:1.vue3.0 script后的setup全局2.所有要用的生命周期,都需要进一步引入:import { ref, reactive, onMounted } from 'vue'3.路由也要引入:import { useRouter }

2023-02-19 11:23:11 601

原创 使用vue3.0重构vue2.0项目《后台通用管理》(一)

vue3.0重构vue2.0 的步骤。两种搭建脚手架方式,配置依赖,配置main.js vite.config.js.

2023-02-16 23:17:14 245

原创 vue--{谈谈对vue生命周期的理解,Vue实现数据双向绑定的原理:Object.defineProperty(),Vue的路由实现:hash模式 和 history模式,vue路由的钩子函数}

vue的数据双向绑定 将MVVM作为数据绑定的入口,整合Observer,Compile和Watcher三者,通过Observer来监听自己的model的数据变化,通过Compile来解析编译模板指令(vue中是用来解析 {{}}),最终利用watcher搭起observer和Compile之间的通信桥梁,达到数据变化 —>视图更新;答:ue 实例有一个完整的生命周期,也就是从开始创建、初始化数据、编译模版、挂载Dom -> 渲染、更新 -> 渲染、卸载等一系列过程,我们称这是Vue的生命周期。

2022-11-17 09:20:46 186

原创 对axios进行的二次封装:

二次封装,便于我们更好的管理我们的接口,不至于请求接口很多的情况下,出现混乱。axios是一个基于promise的HTTP请求库,方便我们进行网络请求。import {music} from ‘封装的axios的文件位置’(1).添加请求拦截器===>前端给后端的参数(还没到后端响应);(2).添加响应拦截器===>后端给前端的数据(后端返回给前端)原因:前端进行请求,后端才能根据请求的内容作出响应;首先,先在项目中下载axios插件。在src文件下创建一个文件夹api。在文件里创建一个api.js文件;

2022-11-13 20:27:55 1978

原创 初-程序猿面试题{代理配置及好处?简单了解一下什么是跨域:,为什么会有同源策略?为什么之前没有配置代理,也能请求到接口呢?}

服务分为协议,主机,端口号. 我们现在启动的项目是通过内存启动的.在组件根目录下的vue.config.js文件中来书写代码,之后在请求数据需要地址的时候,用代理会比书写全部地址简洁一些。自动生成localhost服务. 服务 主机 端口号与后端服务不一致. 所以会触发同源策略 就是所谓的跨域问题.解决跨域问题有很多种方式,在以后工作中,大部分跨域问题都有后端开发来解决,他们做一个注解就能解决跨域问题.3.为了防止恶意网站在自已网站有访问其他网站的权利,以免通过cookie免登,拿到数据。

2022-11-13 12:35:39 134

原创 js题库-3{留言板的制作?jQuery}

li中,通过jquery中的prepend()方法,将li值插入ul开头。原理:点击button按钮,将textarea框里的val()值赋给,新生命的对象。prepend()方法:它是在某个选中元素的开头插入内容。若有疑问,及时提出哦。小作者在持续更新中…

2022-11-13 11:50:15 262 1

原创 Vue--Vue-cli工程技术集合介绍{构建的vue-cli工程都用到了哪些技术,它们的作用分别是什么?vue-cli工程常用的npm命令有哪些?}

(1)vue.js:vue-cli工程的核心,主要特点是双向数据绑定和组件系统。vue官方推荐使用的路由框架。(3)vuex:专为vue.js应用项目开发的状态管理器,主要用于维护vue组件间共用的一些变量和方法。(4)axios(或者fetch、Ajax):用于发起GET、或POST等http请求,基于Promise设计。(5)vuex等:一个专为vue设计的移动端UI组件库(6)创建了一个emit.js文件:用于vue事件机制的管理。模块加载和vue-cli工程打包器。

2022-11-13 10:43:21 132

原创 vue--params传参与query传参的区别?

2.接收参数的时候,query传参使用路由信息对象中‘’的query对象接收,params传参使用路由信息对象中params对象接收,4.如果index.js配置路由时,params的参数时URL不可或缺的一部分,但是query的参数是拼接起来的,没有也不影响。1.使用query传参的时候,name,path都可以引入,但是在使用params传参的时候只能使用name进行引入。比如:this.$ route.params.name/this.$route.query.name。

2022-11-13 09:08:43 392

原创 面试官:请口述说明ajax的实现步骤?什么情况下会导致跨域?

【代码】面试官:请口述说明ajax的实现步骤?什么情况下会导致跨域?

2022-11-13 08:34:03 145

原创 js---《几种数据类型及区别》

3.基本数据类型的赋值是简单赋值,如果从一个变量向另一个变量赋值基本类型的值,会在变量对象上创建一个新值, 然后把该值复制到为新变量分配的位置上。1.简单数据类型(也称基本数据类型): Undefined;2.引用数据类型(也称复杂数据类型),其中包括Object;1.基本数据类型的值是不可变的,任何方法都无法改变一个基本类型的值。1.引用数据类型的特点和基本数据类型相反。2.基本数据类型不可以添加属性和方法。4.基本数据类型的比较是值的比较。4.引用类型的比较是引用的比较。3.引用类型的赋值是对象引用。

2022-11-11 20:35:40 169

原创 初---程序猿面试题{css盒模型?选择器有哪些及它们的优先级?Css垂直居中有哪些方式?lnline-block和block区别?box-sizing?你用过的编程语言中长度单位有哪些?}

inline-block:简单的说,就是将对象呈现为inline对象,让block元素不再独占一行,多个block元素可以同排一行,且元素具有block的属性,可设置宽高,是block和inline元素的综合体。css盒模型(box model),它是包含了内容(content)、内边距(padding)、边框(border)、外边距(margin)属性的一个盒子模型。4、vh and vw:相对于视口的高度和宽度,而不是父元素的(CSS百分比是相对于包含它的最近的父元素的高度和宽度)。

2022-11-11 20:22:32 129

原创 js题库-2{手风琴的制作? “jQuery” 或 “原生js”}

首先先获取到点击元素的this,将点击的this对象的兄弟级下拉,其他的兄弟级收回。nextElementSibling 获取父级中的第一个子元素。点击它的父级元素让它父级元素的第一个子级元素显示,其他的隐藏。next() — 获取当前元素的下一个兄弟元素。

2022-11-10 20:13:35 145

原创 初---程序猿面试题{浏览器输入url到页面呈现出来发生什么,stop 阻止事件继续传播,hash和history,promise什么时候用到.catch,set和map的区别,组件传参}

其原因是因为map和set是根据关键字排序来保证其有序性的,如果允许修改key的话,那么首先需要删除该键,然后调节平衡,再插入修改后的键值,调节平衡,如此一来,严重破坏了map和set的结构,导致iterator失效,不知道应该指向改变前的位置,还是指向改变后的位置。值得注意的是这里返回的是一个已定型的promise,这个过程是promise从pending到reject的改变过程。:一个需要等待,一个不需要等待,在部分情况下,我们的项目开发中都会优先选择不需要等待的异步交互方式。

2022-11-10 16:30:24 761

原创 js题库-1{56.通过ES5的方法怎么把类数组转成真正的数组?}

使用apply和call,apply方法的第二个参数是数组,也可以是类数组,在调用的时候会将第二个参数依次展开。遍历类数组,将类数组里面的元素依次放入一个新的数组。通过ES5的方法怎么把类数组转成真正的数组?

2022-11-09 22:20:27 182

原创 js---《实现图片的懒加载》

定义:当打开一个有很多图片的页面时,先只加载页面上看到的图片,等滚动到页面下面时,再加载所需的图片。这就是图片懒加载。作用:减少或延迟请求数,缓解浏览器的压力,增强用户体验如何实现:1.设置图片src属性为同一张图片,同时自定义一个data-src属性来存储图片的真实地址2.页面初始化显示的时候或者浏览器发生滚动的时候判断图片是否在视野中3.当图片在视野中时,通过js自动改变该区域的图片的src属性为真实地址

2022-11-09 20:29:57 1116

原创 js---《深拷贝,浅拷贝的实现》{递归复制所有层级的属性,通过JSON方法实现深拷贝,Object.assign(),Array.prototype.concat(),/slice()}

slice(start,end):方法可从已有数组中返回选定的元素,返回一个新数组,包含从start到end(不包含该元素)的数组元素。注意:该方法不会改变原数组,而是返回一个子数组,如果想删除数组中的一段元素,应该使用Array.splice()方法。assign()方法是把任意多个的源对象自身的可枚举属性拷贝给目标对象,然后返回目标对象。深拷贝会另外创造一个一模一样的对象,新对象跟原对象不共享内存,修改新对象不会改到原对象。浅拷贝只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存。

2022-11-09 19:47:47 144

原创 js---《数组去重的方法》{Set+Array.from方法;includes方法;for + object方法;Map方法;reduce方法}

第二个参数,当前元素!reduce里面有一定要return,return出去的值也要注意。Array.from()方法就是将一个类数组对象或者可遍历对象转换成一个真正的数组,也是ES6的新增方法。includes()方法用来判断一个数组是否包含一个指定的值,如果是返回 true,否则false。Map遍历整个数组,对里面的每个值做处理再返回一个新的值 利用数据结构存值的特点。利用对象属性名不能重复的特性,如果对象中不存在,就可以给push进去。利用Set数据不重复的特点,结合Array.from。

2022-11-08 16:17:25 398

原创 js---《数组去重的方法(上)》{filter()和indexOf()实现去重,reduce()和includes()实现去重,双重for循环+splice(),for循环+findlndex..}

该方法是利用了findlndex的特性,查找元素时,未找到返回-1,接下来就需要进行判断,如果是-1,说明没有找到,就往新数组添加元素。reduce() 方法将数组缩减为单个值 includes()方法用来判断一个数组是否包含一个指定的值,如果是返回。indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置。该方法是利用sort方法进行排序,进行循环,若原数组的i项和新数组的i-1不一致,就push进去。思路:利用双重for循环找出重复的元素,然后在使用splice()方法删除重复的一个。

2022-11-08 10:49:53 281

原创 js--《影响js性能的操作》

4.在IE中根据name属性取得SPAN元素:w3c规范中getElementsByName是按着name属性进行检索的,而MS的IE却是按着id来检索,导致不能得到应该得到的Elements。18.如果参数可以是JS对象,尽量使用对象 : $(“div”).css({ “display”: “block”, “background-color”: “blue” });12.访问属性使用点(.)操作符, 当以变量的方式访问属性的时候,用下标符号([])。10.字符串拼接,可以使用Array#join。

2022-11-07 15:28:30 134

原创 初---程序猿面试题{数组中常用的一些方法,谈谈this指向,说一说constructor(),class与function定义类的区别,aixos的原理,基本什么实现,Axios二次封装的目的}

答:(1)关于构造器constructor:在function定义的构造函数中,其prototype。constructor属性指向构造 器自身,在class定义的类中,constructor其实也相当于定义在prototype属性上。(2)重复定义:function会覆盖之前定义的方法;class会报错(3)原型或者类中方法的枚举:class中所有方法不可枚举(4)class没有变量提升,function有(5)class定义的类没有私有方法和私有属性。

2022-11-07 14:37:50 897

原创 节流与防抖{概念,什么是节流,什么是防抖,相同点,适用场景}

节流: n 秒内只运行一次,若在 n 秒内重复触发,只有一次生效列:电梯第一个人进来后,15秒后准时运送一次,这是节流防抖: n 秒后在执行该事件,若在 n 秒内被重复触发,则重新计时列:电梯第一个人进来后,等待15秒。如果过程中又有人进来,15秒等待重新计时,直到15秒后开始运送,这是防抖。

2022-11-06 11:45:01 212

原创 初---程序猿面试题{箭头函数,普通函数,new关键字,循环方法,Async与promise区别及如何捕获错误信息,继承,如何处理同步异步}

1.普通函数和箭头函数的this指向的区别?2.new一个关键字做了哪些事情。3.循环的方法有哪些,每个循环有哪些特点呢?4.Async函数用法和promise区别?5.Async和promise如何捕捉错误信息?6.Extends继承和js5 核心区别?7.js中如何处理同步和异步的?

2022-11-06 11:32:38 161

转载 鼠标滑轮,滑动加载效果

参考:

2022-11-05 18:12:59 172

原创 《美食街》项目(个人空间篇)

/问题:如果tab 切换过快,会报错key重复,并且数据也显示不正常//原因:因为Ajax返回数据快慢的问题,显示的最后一次Ajax返回的数据,无法下是对应的数据//如果接口名相同或者过于繁杂,可以使用本方法//原理:使用闭包的形式存储每一次请求的标记,复制时选取当前的标记进行对比,防止混乱(因为请求Ajax需要时间)(async(activeName) =>{//取当前路由的name对应的数据},根据标记取得当前路由数据,然后渲染。若有疑问,及时提出哦小作者在努力持续更新中…

2022-11-05 18:07:03 140

原创 《美食街》项目(注册篇)

替换掉,即可将数据新植入后台数据,可完成注册。注册的话,此项目没有过多要求。,这个是注册新用户的方法。只需将此方法,与登录方法。若有疑问,请及时指出哦。需要使用到api中的。小作者在持续更新中…

2022-11-05 17:25:52 113

原创 《美食街》项目(主页篇){为什么父级的滑动事件,在子级是怎么启用的.节流 性能优化:每隔一段时间,再去执行指定的功能,参数,第一个参数,间隔多少;第二个参数,节流谁

判断当前页数(page)大于总页数(pages)结束运行。如果小于总页数,向后添加到数组menuList里面。> 为什么要再获取一次getMenus? 因为在page属性得到++时,需要获取更多页数,让其活跃起来。> 让新请求的数据,将原本的menuList覆盖;

2022-11-05 17:08:22 125

原创 《美食街》项目---(登录篇){ ‘blur‘焦点属性,resetFields(),meta对象,$confirm,window.location.href=‘/‘}

如代码所示方法中的提交方法:#### 1.:输入第一步判断validata的验证是否通过:---通过则往下执行,校验不通过则弹出提示框“请按要求输入”#### 2.校验通过.then触发,开始进行内部判断:---判断如果result.code===0表示输入成功,跳转到首页,如果result.code===1弹出用户或密码输入错误,请重新输入重置方法:#### 3.设置重置方法:如代码所示:**resetFields()**属性,来对表单中的值进行清理重置,这也是element组

2022-11-05 16:02:31 131

原创 事件流---事件冒泡和事件捕获

所谓冒泡指的就是事件的向上传导,当后代元素上的事件被触发时,其祖先元素的相同事件也会被触发,可以理解为一条鱼在水中吐泡,而这个泡是从水里向水面传送,里到外。事件流呢:在事件发生时,会在发生事件的元素节点与DOM树根节点之间按照特定顺序进行传播,这个过程称为事件流。DOM对象.addEventListener(事件,事件处理程序,事件冒泡方式)。在使用"事件监听"的方式绑定事件时,可以设置事件的响应方式。(1)事件委托:将元素的绑定事件写起其父元素上,防止事件冒泡。首先我们了解一下什么叫做事件流。

2022-11-04 20:32:27 348

原创 初---程序猿面试题(cookie弊端,阻止冒泡与默认事件,块级作用域及函数作用域,面向对象编程,构造函数有new与无new,前端调试bug方法,图片懒加载,)

答:块级作用域:ES5中没有块级作用域;ES6的作用域,任何一对花括号中的语句集都属于一个块,在这之中定义的所有变量在代码块外都是不可见的,我们称之为块级作用域。函数作用域:函数作用于针对于局部变量来说的,在函数中定义的变量在函数外不能获取。面向对象编程是一种编程开发思想。它将真实世界各种复杂的关系,抽象为一个个对象,然后有对象之间的分工与合作,完成对真实世界的模拟。每一个对象都是功能中心,具有明确分工,可以完成接受信息、处理数据、发出信息等任务。因此,

2022-11-03 22:19:33 800

原创 js--《js缓存的三种方法及区别与特点》

sessionStrong:临时的会话储存,只要当前的会话窗口未关闭,存储的信息就不会丢失,即使页面刷新或在编辑器中更改代码,存储的信息也不会丢失。

2022-11-02 22:20:17 619

原创 js--《js延时加载有哪些方式》

《js延时加载有哪些方式》

2022-11-02 21:33:48 518

原创 Vue--路由跳转时的小细节(新页面可视归顶)

第三个参数 savedPosition 当且仅当 popstate 导航 (通过浏览器的 前进/后退 按钮触发) 时才可用。返回 savedPosition,在按下 后退/前进 按钮时,在滚动条位置,就会像浏览器的原生表现那样。这里跳转路由后,此时这个新的页面没有使得可视区域,与页面的头部对齐。我们可以在 Router—index.js的路由配置中添加。该图是首页面,此时它的头部距可视区域为零。

2022-11-02 20:23:23 194

原创 闭包的定义,原理,优点,缺点......

闭包的定义,原理,优点,缺点:内存泄露指一块被分配的内存,既不能使用,又得不到正常的回收,直致浏览器的进行结束。使得内存空间的浪费,严重的话会导致OOM.(OOM全称Out Of Memory)意为内存用完。小扩展:‘js回收机构(GC)为防止内存泄漏,不停歇寻找不再使用的内存’

2022-11-01 20:26:39 130

原创 Vue-购物车系(“移动端” 例:左侧商品选项栏与右侧列表相互响应)【跟据scrollTop,offsetTop,clientHeight,基本结合使用】

在Vue中,我们不用获取dom节点,元素绑定ref之后,直接通过this.$refs即可调用,这样可以减少获取dom节点的消耗。//scrollTop等于是当前ref位置超过外层元素框的值,offsetTop内层元素距外层元素头部的距离。如上代码为布局代码,可参照 ref 位置。//clientHeight仅仅包含内边距+高度。若有疑问,欢迎在评论区提出ヾノ≧∀≦)o。

2022-10-27 20:42:03 658

原创 Vue---购物车系(添加物品时去除重复 并使数据添加。方法一)

【代码】Vue---购物车系(添加物品时去除重复 并使数据添加。方法一)

2022-10-25 15:40:41 713 2

空空如也

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

TA关注的人

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