自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 跟着代码随想录练算法 —— 动态规划(JS)

[62. 不同路径](https://leetcode.cn/problems/unique-paths/)[63. 不同路径 II](https://leetcode.cn/problems/unique-paths-ii/)[96. 不同的二叉搜索树](https://leetcode.cn/problems/unique-binary-search-trees/)[343. 整数拆分](https://leetcode.cn/problems/integer-break/)[416. 分割等和

2022-09-01 16:33:48 581 1

原创 跟着代码随想录练算法——贪心(JS)

贪心的本质是选择每一阶段的局部最优,从而达到全局最优。

2022-07-26 14:45:21 635

原创 跟着代码随想录练算法——二叉树(JS)(下)

105. 从前序与中序遍历序列构造二叉树654. 最大二叉树617. 合并二叉树

2022-07-21 13:17:01 441

原创 跟着代码随想录练算法——二叉树(JS)(上)

145. 二叉树的后序遍历94. 二叉树的中序遍历102. 二叉树的层序遍历107. 二叉树的层序遍历 II199. 二叉树的右视图

2022-07-17 17:01:46 514

原创 跟着代码随想录练算法——队列和栈(js)

[232. 用栈实现队列][225. 用队列实现栈][1047. 删除字符串中的所有相邻重复项][20. 有效的括号][239. 滑动窗口最大值][150. 逆波兰表达式求值][347. 前 K 个高频元素]

2022-07-16 17:09:12 153

原创 SyntaxError: Unexpected token ‘.‘

SyntaxError: Unexpected token '.'C:\Users\86156\Desktop\Vue3学习\vue3_cli_test1\node_modules\@vue\compiler-core\dist\compiler-core.cjs.js:3261 if (grandparent?.source) { ^SyntaxError: Unexpected token '.' at Mod

2022-05-20 15:46:20 20965 5

原创 跟着代码随想录练算法——链表(js)

跟着代码随想录练算法——链表(js)[203. 移除链表元素](https://leetcode.cn/problems/remove-linked-list-elements/)[206. 反转链表](https://leetcode.cn/problems/reverse-linked-list/)[24. 两两交换链表中的节点](https://leetcode.cn/problems/swap-nodes-in-pairs/)[19. 删除链表的倒数第 N 个结点](https://leetcode

2022-05-15 22:53:51 262

原创 跟着代码随想录练算法——哈希表(js)

哈希表[242. 有效的字母异位词](https://leetcode.cn/problems/valid-anagram/)[383. 赎金信](https://leetcode.cn/problems/ransom-note/)[438. 找到字符串中所有字母异位词](https://leetcode.cn/problems/find-all-anagrams-in-a-string/)[49. 字母异位词分组](https://leetcode.cn/problems/group-anagrams/)

2022-05-11 11:07:03 155

原创 跟着代码随想录练算法——数组(相关题目)

这里写目录标题[34. 在排序数组中查找元素的第一个和最后一个位置](https://leetcode-cn.com/problems/find-first-and-last-position-of-element-in-sorted-array/)[35. 搜索插入位置](https://leetcode-cn.com/problems/search-insert-position/)[69. x 的平方根 ](https://leetcode-cn.com/problems/sqrtx/)[367. 有

2022-05-08 18:08:50 187

原创 跟着代码随想录练算法——数组

数组专题[704. 二分查找](https://leetcode-cn.com/problems/binary-search/)[27. 移除元素](https://leetcode-cn.com/problems/remove-element/)[977. 有序数组的平方](https://leetcode-cn.com/problems/squares-of-a-sorted-array/)[209. 长度最小的子数组](https://leetcode-cn.com/problems/minimum-

2022-05-06 21:14:11 161

原创 跟着代码随想录练算法之——回溯算法(js)

回溯77. 组合216. 组合总和 III17. 电话号码的字母组合39. 组合总和40. 组合总和 Ⅱ131. 分割回文串93. 复原 IP 地址491. 递增的子序列46. 全排列47. 全排列 Ⅱ332. 重新安排行程

2022-05-03 00:09:45 565

原创 NC132 环形链表的约瑟夫问题

NC132 环形链表的约瑟夫问题单向循环链表+模拟尾插法建立单向链表,节点的val为自己的编号最后将尾节点的 next 指向头结点,形成单向循环列表进行循环操作,循环结束的条件为链表中只剩下一个元素,也就是 p.next === pcount 用于计数,初始化为1;p为当前节点,初始化从head开始;pre为p的前一个节点,初始化为rear;如果当前计数达到 m ,表明p需要被删除,让 pre.next = p.next 即可,p后移一位如果不需要删除,count + 1,pre,p都后移一

2022-04-25 12:58:36 375

原创 NC95 数组中的最长连续子序列(js)

NC95 数组中的最长连续子序列排序+遍历计数特判一下数组元素为0和1的情况通过 sort() 将数组排序,ans 记录最长序列,count 记录当前序列长度,each 记录序列末尾元素如果当前元素等于 each + 1,可以添加到序列尾部,count ++如果当前元素 == each,忽略,continue 即可如果不满足上面两种情况,则重新开始一个序列,记录下ans与当前序列长度的较大值,并且count需要从1开始。遍历完数组之后返回ans即可/** * max increasin

2022-04-25 12:32:51 300

原创 NC105 二分查找-Ⅱ

NC105 二分查找-II这个b站的视频对于二分的边界情况说明的很清楚,推荐观看学习。二分查找为什么总是写错?–bilibili这里的题目可以参考 找到第一个 大于等于 target 的元素IsBlue 的条件为 < target,小于的都是蓝色,大于等于的都是红色,最后返回红色边界,也就是返回 r特判:但是这个target有可能在nums数组中不存在,在返回之前还需要判断数组下标为r的值是否等于 target 如果不等于则说明target不在数组中,返回 -1;否则直接返回 r

2022-04-24 22:55:29 169

原创 NC89 字符串变形

NC89 字符串变形字符串通过 split 方法转换为数组,分隔符为空格将数组反转 ,使用 reverse 方法对数组中每个元素进行大小写互换,使用 parseStr 函数再拼接parseStr 函数的实现:对传入的字符串str遍历每个字母,charAt(i) 获取字符串第i位的字符charCodeAt返回字符的 unicode编码对字符的大小写进行判断,小写转换为大写则将 unicode-32,大写转换为小写则将 unicode+32 ,fromCharCode 方法根据unicode

2022-04-24 22:54:23 187

原创 NC123 序列化二叉树

NC123 序列化二叉树str 返回最终遍历的字符串序列,空节点用 #表示,非空节点用节点的 val 表示每个节点之间使用! 隔开,因为 Serialize 返回的是字符串,所以需要一个分隔符,便于 Deserialize 来拆分字符串得到各个节点Serialize特判一下空树返回空字符串借助队列层次遍历二叉树:将根节点放入队列 queue当队列不为空时:取出队头元素,如果队头有左节点,左节点 + ! 拼接到str,如果左节点不存在 #! 拼接到str,右节点也一样。最后返回 s

2022-04-24 22:45:45 823

原创 NC81 二叉搜索树的第k个节点(js)

NC81 二叉搜索树的第k个节点二叉搜索树又叫二叉排序树,中序遍历结果为升序序列我们可以通过中序遍历,先找到第k小节点,再计数,计到第k个时,这个节点也就是第k小的节点了,通过ans变量记录这个节点的值并在最后返回那么如何找到最小的节点呢?根据二叉排序树的性质:左子树的每个节点都小于当前节点,右子树的每个节点都大于当前节点。那么最左边的节点,也就是中序遍历中最先没有左子树的节点最小。这里设置一个flag,初始化为0,当遍历到了最小节点的时候设置为1,num在 flag==1时才开始计数当flag

2022-04-24 22:38:50 553

原创 网易云---手机验证码登录

5.35.3.0 写在前面之前写扫码登录的时候对于什么时候clear那个发送请求获取二维码当前状态的定时器timer,只考虑了两种情况,现在再完善一下,再添加一种情况,就是路由的跳转:关闭 Dialog弹窗二维码状态 :失效或者登录成功/失败路由的跳转 :只要是从 /logincode 跳转出去,就应该清理 timer那么如何实现路由跳转出去清理当前组件里的 timer 呢?刚开始我的想法是:在父组件中设置变量 codeVisible,并且将其传递给子组件在他们的父组件中

2022-04-18 22:37:57 1618

原创 仿写网易云-项目初始化-扫描二维码登录

仿写网易云-项目初始化-扫描二维码登录1. 项目初始化2. 安装使用 Element UI3. 设置一下页面的布局4. 开始写 Header5. 点击未登录弹出登录窗口5.1 原理分析5.2 扫码登录 LoginByScanCode 组件5.2.1 组件UI 样式5.2.2 函数的封装5.2.3 页面功能逻辑1. 项目初始化2. 安装使用 Element UI这里使用的是全部引入,比较方便安装 element ui :npm i element-ui -S全部引入 在 main.js 中添

2022-03-22 16:18:08 2834

原创 黑马头条案例(移动端)

黑马头条案例0. 写在前面1. 创建并梳理项目结构1.1 创建1.2 components 和 views 文件夹1.4 其他项目文件的初始化2.安装和配置 Vant 组件库3. 使用 Tabbar 组件开启路由模式3.1 报错 `Component name "Home" should always be multi-word`3.2 修改 vant 组件的默认样式4. 在 vue 项目使用 axios5. 零零散散6. 上拉加载更多7. 下拉刷新8. 定制主题8.1 直接覆盖8.2 通过 theme.l

2022-03-17 17:45:04 5258 2

原创 后台管理案例

后台管理案例黑马后台小案例控制页面权限1. 当需要权限的路径不多时可以声明数组来储存路径2. 当需要权限的路径较多时 可以设置一个导出数组的 js 文件黑马后台小案例跟着视频写的案例源码地址:控制页面权限1. 当需要权限的路径不多时可以声明数组来储存路径// 全局前置守卫router.beforeEach((to, from , next) => { // 控制页面权限 const pathArr = ['/home', '/home/users', '/home/goods

2022-03-17 17:31:39 697

原创 Vue UI组件库以及 Element UI 使用

Vue UI组件库以及 Element UI 使用1. Vue UI 组件库1.1 移动端常用 UI 组件库1.2 PC 端常用 UI 组件库2. Element UI2.1 安装2.2 上手2.3 按需引入1. Vue UI 组件库1.1 移动端常用 UI 组件库VantCube UIMint UI1.2 PC 端常用 UI 组件库ElementIVew UI2. Element UI官网: Element UI2.1 安装npm i element-ui -S2.

2022-03-17 11:37:24 958

原创 Vue记住滚动条位置 scrollBehavior + debounce

Vue记住滚动条位置1. 先给占位符加一层缓存2. 在路由上加一个源信息meta,记录滚动条的top值3. 使用 scrollBehavior4. 给页面添加事件监听使用前端路由,当切换到新路由时,想要页面滚到顶部,或者是保持原先的滚动位置,就像重新加载页面那样。 vue-router 可以自定义路由切换时页面如何滚动。注意:这个功能只在支持history.pushState的浏览器中可用1. 先给占位符加一层缓存Home 是需要记住滚动条位置的组件<!-- 路由占位符 -->&

2022-03-14 16:04:27 3201 2

原创 Vuex学习小结

Vuex1. 理解 Vuex1.1 vuex是什么1.2 什么情况下使用 vuex1.3 Vuex 工作原理2. 安装及其使用2.1安装和初始化工作2.2 使用3. Vuex 开发者工具4. store 的一些配置项4.1 getters4.2 mapState 和 mapGetters4.3 mapActions 与 mapMutations5. 多组件共享数据6. 模块化 + 命名空间1. 理解 Vuex1.1 vuex是什么专门在 Vue中实现集中式状态(数据)管理的一个 vue 插件,

2022-03-10 10:45:30 1083

原创 前端路由和vue-router

前端路由和vue-router1. 前端路由的概念与原理1.1 什么是路由1.2 SPA 与前端路由1.3 锚链接1.4 前端路由工作方式1.5 手动模拟简易的前端路由2. vue-router 的基本用法2.1 什么是 vue-router2.2 安装配置以及基本使用3. vue-router 常见用法3.1 路由重定向3.2 嵌套路由3.3 默认子路由3.3 动态路由匹配3.3.1 动态路由的概念3.3.2 参数对象 参数值3.3.3 为路由开启 props 传参3.3.4 拓展 query 和 ful

2022-02-27 22:17:16 462

原创 在vue中使用axios

在vue中使用axios1. 基本用法演示2. 把 axios 挂载到 Vue 原型上并配置请求根路径2.1 挂载2.2 配置请求根路径2.3 缺点2.4 main.js 源码1. 基本用法演示get 请求<button @click="getInfo">发起 GET 请求</button>methods: { async getInfo () { const { data: res } = await axios.get('http://www

2022-02-25 15:59:14 517

原创 ESLint以及安装配置相关插件

ESLint以及安装配置相关插件1.创建带 eslint 的项目1.1 写在前面的 VSCode 配置1.2 创建流程2. `.eslintrc.js` 配置文件中的rules 节点3. 初步了解语法规则4. 安装并配置 ESlint 插件5. Prettier - Code formatter插件6. 一些参考配置1.创建带 eslint 的项目1.1 写在前面的 VSCode 配置在设置中搜索 tabsize修改下面两个选项在设置中搜索 format on save修改下面这个选

2022-02-25 00:11:12 2699

原创 Vue自定义指令

Vue自定义指令1. 什么是自定义事件2. 自定义指令的分类3. 私有自定义指令3.1 基本使用3.2 binding.value3.3 update 函数3.4 函数简写4. 全局自定义指令5. main.js 中的小提示1. 什么是自定义事件vue 官方提供了 v-text,v-for,v-model,v-if 等常用指令。除此之外 vue 还允许开发者自定义指令。2. 自定义指令的分类私有自定义指令全局自定义指令3. 私有自定义指令3.1 基本使用在每个 vue 组件中,可以在 d

2022-02-24 17:51:56 2094

原创 Vue插槽

Vue插槽1. 什么是插槽2. 插槽基本用法3. v-slot: 将内容放在指定插槽4. 插槽后背(默认)内容5. 具名插槽6. 作用域插槽1. 什么是插槽插槽(slot)是 Vue 为组件的封装者提供的能力。允许开发者在封装组件时,把不确定的,希望由用户指定的部分定义为插槽。2. 插槽基本用法如果没有在组件内部声明插槽区域,则组件标签内的内容默认不显示App.vue<Left> <p>这是在 Left 组件声明的p标签</p></Lef

2022-02-23 21:38:05 1622

原创 Vue动态组件

Vue动态组件1.什么是动态组件2. 如何实现动态组件渲染3. 使用 keep-alive 保持状态4. keep-alive 对应的生命周期函数5. keep-alive 的 include 属性6. 了解组件注册名称和组件声明时name的区别1.什么是动态组件动态组件指的是动态切换组件的显示与隐藏2. 如何实现动态组件渲染vue 提供一个内置的 <component> 组件,专门用来实现动态组件的渲染。<component> 组件作用:相当于占位符is 属性的值

2022-02-23 17:17:33 790

原创 Vue ref引用

ref引用1. ref 引用概念2.使用 ref引用获取 DOM3. 使用 ref 引用组件实例4. 了解 this.$nextTick 应用场景4.1 遇到的场景4.2 解决方案4.3 为什么不用 updated1. ref 引用概念jquery :简化了程序员操作 DOM 的过程。vue 优势:MVVM 在vue中,程序员不需要操作 DOM 。程序员只需要把数据维护好即可。建议:在 vue 的项目中,不要使用 jquery。那么在 vue 中需要操作 DOM 怎么办呢?ref 用来辅助

2022-02-21 23:06:23 496

原创 Vue 生命周期和数据共享

Vue 生命周期和数据共享1. 组件的生命周期1.1 生命周期与生命周期函数1.2 组件生命周期函数的分类1.3 生命周期图示以及详解2. 组件之间的数据共享2.1 组件之间的关系2.2 父向子传值2.3 子向父传值2.4 兄弟之间的数据关系1. 组件的生命周期1.1 生命周期与生命周期函数生命周期是指一个组件从 创建 => 运行 => 销毁 的整个时间段,强调的是一个时间段。生命周期函数是由 vue 框架提供的内置函数,会伴随着组件的生命周期,自动按次序执行。1.2 组件生命周期

2022-02-21 15:28:14 1944 5

原创 Vue组件

组件1. 组件化开发2. vue 中的组件化开发3. vue 三个组成部分4. methods watch computed flters5. 启用 less 语法6. 组件之间的父子关系7. 使用组件的三个步骤8. 安装并配置@路径提示的插件9. 私有子组件和全局组件9.1 注册私有子组件9.2 注册全局组件10. 组件的 props10.1 概念10.2 使用10.2 props 是只读的10.3 props 的默认值 default10.4 props 的 type 值类型10.5 props

2022-02-19 23:37:21 240

原创 vue-cli

vue-cli1.介绍并安装 vue-cli1.1 什么是单页面应用程序1.2 什么是 vue-cli1.3 安装2. 使用 vue-cli 创建项目2.1 基于 vue-cli 快速生成工程化的 Vue 项目:2.2 创建过程:3. 介绍项目目录结构3.1 基本目录3.2 src 目录4. 了解 vue 项目的运行流程1.介绍并安装 vue-cli1.1 什么是单页面应用程序单页面应用程序,顾名思义,指的是一个 web 网站中只有唯一的一个 HTML 页面,所有的功能与交互都在这唯一的一个页面内完

2022-02-18 22:34:37 253

原创 axios简单使用

axios简单使用1. axios 的基本使用2. get 请求传递参数 **params**3. post 请求 传递请求体 data4. 使用 async await 调用 axios5. 使用结构赋值6. axios.get 和 axios.post6.1 axios.get6.2 axios.post1. axios 的基本使用axios 是一个专注于网络请求的库!axios 基本语法如下:axios({ method: '请求方式', url: '请求地址',})

2022-02-17 22:06:35 715

原创 vue过滤器和侦听器和计算属性

过滤器和侦听器和计算属性1. 过滤器1.1基本用法1.2私有过滤器和全局过滤器1.3 Dayjs1.4 连续调用多个过滤器1.5 过滤器传参1.6 兼容性2. watch 侦听器2.1 简介2.2 应用场景:判断用户名是否被占用2.3 immediate 选项2.4 deep 选项3.计算属性3.1 了解计算属性应用场景3.2 控制 div 背景颜色案例1. 过滤器1.1基本用法过滤器(Filters)是 vue 为开发者提供的功能,常用于文本的格式化。过滤器可以用在两个地方:插值表达式和 v-bi

2022-02-17 19:48:38 813

原创 vue的指令

vue的指令1.vue 的指令1.1 指令的概念与分类1.2 内容渲染指令1.3 属性绑定指令1.4 事件绑定指令1.4.1 如何绑定1.4.2 事件对象1.4.3 事件修饰符1.4.4按键修饰符1.5 双向绑定指令1.5.1 基本使用1.5.2 v-model 指令的修饰符1.6 条件渲染指令1.6.1 v-if 和 v-show1.6.2v-else-if 和 v-else1.7 列表渲染条件1.7 品牌列表案例源码1.vue 的指令1.1 指令的概念与分类指令 是 vue 为开发者提供的模板语

2022-02-15 23:11:24 694

原创 vue简介以及基本使用安装调试工具

vue简介以及基本使用1. vue简介1.1 了解 vue 是什么1.2 vue两个特性1.2.1 数据驱动视图1.2.2 双向数据绑定1.3 浅学一下 MVVM1.3.1 MVVM1.3.2 工作原理1.4 vue的版本2. vue 基本使用2.1 基本使用步骤3.vue 调试工具3.1 安装1. vue简介1.1 了解 vue 是什么官方给出的概念:Vue 是一套用于构建用户界面的前端框架。构建用户界面:用 Vue 往 html 页面中填充数据,非常的方便框架:是一套现成的解决方案,

2022-02-14 00:15:15 431

原创 前端工程化与webpack简单使用(2) 最终版

前端工程化与webpack简单使用1.前端工程化1.1实际的前端开发1.2什么是前端工程化1.3前端工程化的解决方案早期目前主流2.`webpack`的基本使用2.1什么是 webpack2.2隔行变色案例2.3安装`webpack`2.4配置`webpack`2.4.1基本配置2.4.2压缩2.4.3`webpack`中的默认约定2.4.4自定义打包的入口出口3.`webpack`中的插件3.1 `webpack-dev-server`3.1.1简介3.1.2安装3.1.3配置3.2 `html-webp

2022-02-13 03:56:31 262

原创 前端工程化与webpack简单使用(1)

前端工程化与webpack简单使用1.前端工程化1.1实际的前端开发1.2什么是前端工程化1.3前端工程化的解决方案早期目前主流2.`webpack`的基本使用2.1什么是 webpack2.2隔行变色案例2.3安装`webpack`2.4配置`webpack`2.4.1基本配置2.4.2压缩2.4.3`webpack`中的默认约定2.4.4自定义打包的入口出口3.`webpack`中的插件3.1 `webpack-dev-server`3.1.1简介3.1.2安装3.1.3配置3.2 `html-webp

2022-02-10 18:14:45 817

空空如也

空空如也

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

TA关注的人

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