自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(119)
  • 问答 (1)
  • 收藏
  • 关注

原创 【TypeScript】关键概念和知识点

TypeScript 提供了许多提升开发体验的工具和特性,帮助开发者编写更健壮、更易维护的代码,同时保持与 JavaScript 的兼容性。下面我将列举ts的一些关键概念和知识点。1. 类型注解(Type Annotations)2. 接口(Interfaces)3. 类型推断(Type Inference)4. 联合类型(Union Types)5. 类型别名(Type Aliases)6. 可选属性和参数 7. 泛型 8. 枚举 9. 类型断言 10. 模块化 11. 类和继承 12. 实用类型

2024-08-19 16:25:46 904

原创 部署Next.js应用详细指南:在 Linux 服务器上使用 Nginx、PM2、Certbot 和 Git

假设你已经构建了一个 Next.js 应用,现在想要将其部署到 Linux 服务器上。我将引导你完成这些步骤。如果没有,你可以使用几个简单的命令进行安装。完成后,你需要为应用设置一个域名。你可以从域名注册商处购买域名,也可以使用免费域名提供商(如 Freenom)。我使用的是Xftp7,给服务器直接传了个压缩包,毕竟node包和原项目下的一些依赖项不需要拷贝。这是一个进程管理器,可帮助你让应用在后台运行,并在。PM2 易于安装和使用,是确保你的应用始终可供用户使用的绝佳方式。

2024-08-15 11:10:41 1376

原创 前端学习资源整合

整合优质前端学习资源和文章,不定期更新。

2024-03-20 19:47:07 335

原创 Octave使用教程

octave使用教程(吴恩达机器学习),文字部分来自http://www.ai-start.com/ml2014/html/week2.html,现在主要用python

2023-02-03 12:02:32 5705 1

原创 【React】useEffect的使用场景与作用

useEffect是 React 中的一个 Hook,用于在函数组件中执行副作用。副作用是指那些与渲染过程无关的操作,比如数据获取、订阅事件、手动操作 DOM、日志记录等。useEffect允许你在函数组件中引入这些副作用,而不必依赖于类组件的生命周期方法(如和。

2024-08-29 13:36:30 753

原创 【Git】克隆并push远程指定分支

【代码】【Git】克隆并push远程指定分支。

2024-08-19 09:31:50 281

原创 【大模型】多模态的原理简述

在这个过程中,模型会把每一步的图片向量值,和文字的向量值的数据分布的演变规律,进行系统学习并沉淀下来,这就完成了模型的训练。当然这个过程比我描述的还要更复杂,比如过程里还要考虑到,噪点图的原始状态,加减噪点的过程需要多少步,每一步需要加入的噪点分布等等,这里仅为了大家理解方便,仅对主干逻辑作了讲解。一张是前向的,在图片上加噪点,最终生成一张无意义的噪点图,一个是后向的,从一个无意义的噪点图上消除噪点,最终得到一张有意义的实际图片。如有感兴趣的同学,可以看一下张涛老师对diffusion原理做的一次分享。

2024-08-16 17:16:51 212

原创 【大模型】LLM工作原理简述

LLM,即large-language-model,大语言模型。我们可以观察LLM大模型比如豆包在回复的时候,是不是一个一个字,行业里称之为流式输出的方式给你呈现内容的。为什么会这样呢?这是因为,大模型确实是在一个字一个字地去推理生成内容的。就好像我们看输入法的输入联想逻辑,输入联想,其实就是根据你输入的单个字,来推测你要输入的下个字是什么。比如我打了一个“输”字,那么我要打的下字就很有可能是“入”,当然这里就会有人问了,我要打的下个字也很有可能是“球”啊。

2024-08-16 17:14:35 823

原创 【JavaScript】浅拷贝和深拷贝

Javascript浅拷贝与深拷贝

2024-08-15 20:01:27 372

原创 【React】实现消息列表的删除

但是消息列表式存在服务器上,页面一刷新之后消息列表又出现了,明天还得对齐接口。2.点击删除按钮时若正在生成回复,删除操作的优先级更高,会阻塞回答后一次性生成。3.子组件Sidebar中传入方法,实现删除功能。工作小记,第一次接触react项目。2.父组件中通过props解构出。1.只剩一个消息队列时将无法删除。1.增加删除对话项的函数。

2024-08-01 17:32:24 271

原创 GitHub Pages上用vue搭建个人网站简记

GitHub会帮你自动部署在 https://jerryqjr.github.io/ 上。随后在 Settings/Pages 页面中选择gh-pages分支即可完成。将仓库取名为:.github.io。的内容推送到远程分支。

2024-07-30 10:51:58 301

转载 使用Windows安装Ollama大语言模型

本文主要介绍如何在Windows系统快速部署Ollama开源大语言模型运行工具,并安装Open WebUI结合cpolar内网穿透软件,实现在公网环境也能访问你在本地内网搭建的大语言模型运行环境。近些年来随着ChatGPT的兴起,大语言模型 LLM(Large Language Model)也成为了人工智能AI领域的热门话题,很多大厂也都推出了自己的大语言模型,并或多或少的开源了自己的大语言模型,今天就来分享一个最近很火,且对于小白来说比较好上手本地部署的运行本地LLM的工具Ollama。

2024-07-18 09:45:45 221

原创 Docker Desktop+WSL2从C盘迁移到其他盘

hyper-v-default-data-root=D:\DockerDesktop\hyper-v-data:指定 Hyper-V 模式下的默认数据存储位置为 D:\DockerDesktop\hyper-v-data。–wsl-default-data-root=D:\DockerDesktop\wsl-data:指定 WSL 2 模式下的默认数据存储位置为 D:\DockerDesktop\wsl-data。–always-run-service:设置 Docker Desktop 服务始终运行。

2024-07-17 14:45:48 909

原创 【前端面经】滴滴一面

虚拟dom实际上是一层对真实DOM的抽象,以JavaScript 对象 (VNode 节点) 作为基础的树,用对象的属性来描述节点,最终可以通过一系列操作使这棵树映射到真实环境上。通过虚拟DOM,可以在内存中进行DOM操作,而不是直接操作真实DOM。

2024-06-19 23:38:35 814

原创 【Vue】实现商品列表的无限加载

注:v-infinite-scroll与infinite-scroll-disabled为elementPlus中Infinite Scroll无限滚动的自定义指令。

2024-06-17 21:53:07 375

原创 【Vue】图片懒加载的实现

有一点需要说明:IntersectionObserver是异步库,这样即使目标元素一开始就在视口中,回调函数的执行也会在解构赋值之后,这样能够确保stop方法在回调函数中调用时已经被正确解构。

2024-06-17 16:36:15 386

原创 【Vue】Pinia管理用户数据

基本思想:Pinia负责用户数据相关的state和action,组件中只负责触发action函数并传递参数。

2024-06-15 17:18:00 596

原创 【Vue】登录功能中对于错误提示信息的重构

在 Axios 中,res 和 e 参数分别代表成功的响应对象和错误对象。这些参数是由 Axios 在请求完成时传递给响应拦截器函数的。让我们深入了解一下这些参数是从哪里来的,以及 Axios 如何处理它们。res 和 e 参数的来源成功的响应 (res)当 Axios 发出一个 HTTP 请求并成功接收到服务器的响应时,它会将该响应对象传递给 onFulfilled 函数。这个响应对象包含了从服务器返回的所有数据和元信息。res => res.data, // `res` 是成功的响应对象。

2024-06-15 12:10:41 1053 1

原创 【Javascript】Promise形象比喻

我们可以把 Promise 形象地比喻为一个“外卖订单”,它有三种状态:下单中、已送达、已取消。这个比喻可以帮助你理解 Promise 的工作机制。

2024-05-26 14:25:39 537 1

原创 【Vue3】新组件

vue3新组件

2024-05-09 23:10:20 336

原创 【Vue3】其他常用API

通过使用 shallowRef()和 shallowReactive()来绕开深度响应。浅层式API创建的状态只在其顶层是响应式的,对所有深层的对象不会做任何处理,避免了对每一个内部属性做响应式所带来的性能成本,这使得属性的访问变得更快,可提升性能。

2024-05-09 15:07:59 919

原创 【Vue3】组件通信总结

注意区分好:原生事件、自定义事件。原生事件:事件名是特定的(clickmosueenter等等)事件对象$event: 是包含事件相关信息的对象(pageXpageYtargetkeyCode自定义事件:事件名是任意名称事件对象$event: 是调用emit时所提供的数据,可以是任意类型!!!--在父组件中,给子组件绑定自定义事件:--> < Child @send-toy = " toy = $event " />

2024-05-08 17:31:50 870

原创 【Vue】插槽slot

作用域插槽理解:数据在组件的自身,但根据数据生成的结构需要组件的使用者来决定。

2024-05-08 17:22:57 763

原创 【Vue】pinia

官网:https://pinia.vuejs.org/zh/

2024-05-07 17:28:44 837

原创 【Vue-router】vue路由详解

vue路由详解,包含对路由的理解,路由配置,路由工作模式,嵌套路由,路由传参,路由的props配置,replace属性,路由的编程式导航......本文代码采用组合式API+ts来写

2024-05-06 12:09:59 854

原创 VSCode 推送/拉取代码常见报错问题解决

1.在终端配置http代理和https代理。2.取消勾选git: use editor as commit input

2024-05-04 15:05:34 795

原创 【Vue3】watch的五种使用情况与watchEffect

监视,情况一:监视【ref】定义的【对象类型】数据,监视的是对象的地址值,若想监视对象内部属性的变化,需要手动开启深度监视。结论:监视的要是对象里的属性,那么最好写函数式,注意点:若是对象监视的是地址值,需要关注对象内部,需要手动开启深度监视。定义的【对象类型】数据:直接写数据名,监视的是对象的【地址值】,若想监视对象内部的数据,要手动开启深度监视。// 监视,情况四:监视响应式对象中的某个属性,且该属性是对象类型的,可以直接写,也能写函数,更推荐写函数。// 监视,情况五:监视上述的多个数据。

2024-04-30 20:43:02 839

原创 【Vue3】computed

作用:根据已有数据计算出新数据

2024-04-30 11:03:55 430 1

原创 【Vue3】Ref与Reactive

name和age是一个RefImpl的实例对象,简称ref对象,它们的value属性是响应式的。// 注意:name不是响应式的,name.value是响应式的,所以如下代码并不会引起页面的更新。// 通过toRef将person对象中的gender属性取出,且依然保持响应式的能力。// 通过toRefs将person对象中的n个属性批量取出,且依然保持响应式的能力。// tel就是一个普通的字符串,不是响应式的。// JS中操作ref对象时候需要.value。commits记录中查找。

2024-04-29 11:07:18 880

原创 【Vue3】setup

setup是Vue3中一个新的配置项,值是一个函数,它是表演的舞台,组件中所用到的:数据、方法、计算属性、监视…等等,均配置在setup中。setup函数返回的对象中的内容,可直接在模板中使用。setup中访问this是undefined。setup函数会在之前调用,它是“领先”所有钩子执行的。

2024-04-29 10:15:47 718

原创 【JavaScript】异步函数(async和await详解)

来源于红宝书,详解异步函数

2024-04-19 20:26:02 4468 1

原创 【JavaScript】期约 Promise

来源于红宝书(JavaScript高级程序设计),三万字长文,详细完整的介绍了Promise。本人略有修改,仅供参考

2024-04-17 19:32:45 620

原创 【Vue】$emits和props

emit用于子组件向父组件发送消息或通知。props用于父组件向子组件传递数据。这两个机制共同构成了Vue组件间通信的基础,使得组件可以更加灵活和可复用。

2024-04-12 11:15:50 262

原创 【Vue】生命周期

每个 Vue 组件实例在创建时都需要经历一系列的初始化步骤,比如设置好数据侦听,编译模板,挂载实例到 DOM,以及在数据改变时更新 DOM。在此过程中,它也会运行被称为生命周期钩子的函数,让开发者有机会在特定阶段运行自己的代码。时,Vue 会自动将回调函数注册到当前正被初始化的组件实例上。你现在并不需要完全理解图中的所有内容,但以后它将是一个有用的参考。还有其他一些钩子,会在实例生命周期的不同阶段被调用,最常用的是 onMounted。也可以在一个外部函数中调用,只要调用栈是同步的,且最终起源自。

2024-04-09 14:39:57 444 1

原创 【Vue】响应式原理与ref

JavaScript 运行环境包含了一些不可枚举、不可写入的对象属性,然而在 ES5 之前开发者无法定义他们自己的不可枚举属性或不可写入属性。ES5 引入方法以便开发者在这方面能够像 JS 引擎那样做。ES6 为了让开发者能进一步接近 JS 引擎的能力,推出了Proxy,代理是一种封装,能够拦截并改变 JS 引擎的底层操作。简单的说,就是在目标对象上架设一层 “拦截”,外界对该对象的访问,都必须先通过这层拦截,提供了一种改变 JS 引擎过滤和改写的能力。Proxy。

2024-04-08 12:01:01 817 2

原创 【蓝桥杯Web组题解3】收集帛书碎片

三叔在外出考古途中无意发现了一份战国帛书,帛书边缘有被明显裁剪过的痕迹,单从帛书片段,提到记录了神秘文物的地点,无奈帛书不完整,为了早日将文物带回博物馆,三叔号召当地村民闷油瓶、王胖子、潘子共同寻找剩余帛书碎片,相约一炷香后再聚。本题需要在已提供的基础项目中使用 JS 知识封装一个函数,达到收集帛书碎片的要求。在浏览器中预览index.html页面,显示如下所示:目标请在文件中补全函数同一个人收集的帛书碎片可能是有重复的。同一组内不同的人收集的帛书碎片也可能是有重复的。

2024-04-06 17:38:53 365

原创 【蓝桥杯Web组题解2】图片水印生成

很多网站都会通过给图片添加水印的形式来标记图片来源,维护版权。前端生成水印通常是通过canvas实现,但实际上我们也可以直接利用CSS来实现图片水印,这样做会有更好的浏览器兼容性。本题中你将封装一个创建文字水印的函数。

2024-04-06 11:47:43 314

原创 【Vue】第一个小项目“怪物杀手”

【代码】【Vue】第一个小项目“怪物杀手”

2024-04-02 14:48:15 651

原创 【Vue面试题】v-show和v-if有什么区别?使用场景分别是什么?

转自:https://vue3js.cn/interview/vue/show_if.html#%E4%B8%89%E3%80%81v-show%E4%B8%8Ev-if%E5%8E%9F%E7%90%86%E5%88%86%E6%9E%90。是真正的条件渲染,它会确保在切换过程中条件块内的事件监听器和子组件适当地被销毁和重建。切换有一个局部编译/卸载的过程,切换过程中合适地销毁和重建内部的事件监听和子组件;的作用效果是相同的(不含v-else),都能控制元素在页面是否显示。的时候不会触发组件的生命周期。

2024-03-31 16:02:07 353

原创 【vue】一个小bug和key的引入

vue当你更改元素时会在真实的dom中渲染并更新list。这两个goal是两个dom元素,触发点击事件后,vue并不会删除第一个dom元素,而是把第二个dom元素的动态内容(删除后该list后输入框中的Jerry消失了。属性,用来告知vue区分不同的。)复制到第一个dom元素中,的html标签使用,就像是。属性,可以在所有带有。

2024-03-30 16:35:11 723

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

TA关注的人

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