自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 socket.io-client实现实前后端时通信功能

主体功能初步实现,后期可以优化方向,设计数据库 将添加过的好友存储在数据表中,添加好友要先通过才能添加。这里我使用的后端 基于node.js的koa框架 前端使用的是vite。

2024-09-24 00:36:42 586

原创 调用本地大模型API 以ollama为例子 技术栈node.js koa2 vite

下载合适的大模型 运行内存16g 建议 7b 左右的大模型,16g以上自己合理安排 点击官网模型下载合适的大模型 复制粘贴到cmd中 下载完成后 ollama list 查看版本。在cmd中查看版本 ollama -v 看到有版本号,说明安装完成。命令 ollama run llama3.1 现在可以在控制台对话了。第二部 调用ollama的本地IP 可以查看官网。首先在官方下载ollama大模型。代码还有不足,希望一起diy吧。这是koa2的主要中间件。

2024-08-15 01:23:07 599

原创 用koa2 和 html javascript做了一个视频列表功能

其中nodejs中使用 fluent-ffmpeg 要和ffmpeg软件一起使用。主要功能就是在网页中能够看到视频图片的缩略图。

2024-08-07 19:04:22 297

原创 koa2文件的上传下载功能

/ 确保这是文件在服务器上的完整路径。// 引入 koa-static。// 引入 koa-send。msg: “文件未找到”,msg: “创建成功”,

2024-01-14 14:07:27 655

原创 css表单

【代码】css表单。

2023-12-12 14:51:33 713

原创 css中的 box-sizing: border-box

box-sizing: border-box 是 CSS 中的一个盒子模型属性,用于指定元素的盒子模型的计算方式。默认的盒子模型是 content-box,而使用 border-box 则表示元素的宽度和高度包括了元素的边框和内边距,而不仅仅是内容的宽度和高度。例如,如果你设置一个元素的宽度为 100px,那么无论你添加了多少边框和内边距,这个元素的总宽度都会保持为 100px。在默认的 content-box 盒子模型中,宽度和高度仅包括内容区域,而边框和内边距会额外增加到元素的宽度和高度之外。

2023-12-11 14:45:41 3419

原创 微信小程序的页面滚动事件监听

需要注意的是,onPageScroll 方法只能在页面的 onLoad 方法中注册,如果需要在其他地方监听页面滚动事件,可以考虑使用 wx.createIntersectionObserver 方法来创建一个交叉观察器,或者使用第三方组件库中提供的滚动组件来实现。在 onPageScroll 方法中处理页面滚动事件。onPageScroll 方法会在页面滚动时被调用,参数 event 包含了当前页面滚动的位置信息,例如 event.scrollTop 表示当前页面滚动的距离。

2023-09-05 11:28:57 2777

原创 微信小程序和 Vue 中的遍历循环和列表渲染有一些区别。

需要注意的是,在 Vue 中,我们可以使用对象或数组来进行列表渲染,而在微信小程序中,只能使用数组来进行遍历循环。此外,在 Vue 中,我们可以使用 v-for 指令的第二个参数来获取当前元素的索引,而在微信小程序中,需要使用 wx:for-index 和 wx:for-item 属性来分别获取当前元素的索引和值。这里的 items 是一个数组,wx:for 指令会遍历这个数组,并将数组中的每个元素赋值给 item 变量,然后在模板中使用 {{item}} 来显示每个元素的值。

2023-09-05 11:22:34 561

原创 原生微信小程序-路由01

【代码】原生微信小程序-路由01。

2023-09-04 10:44:51 140

原创 vue node 实现文件的分片上传

【代码】vue node 实现文件的分片上传。

2023-07-16 15:51:30 466

原创 vue如何使用webscorket实现多人协同在线表格填写

通过这种方式,当一个用户填写或修改表格时,更新的数据将通过WebSocket发送到服务器,然后服务器会将这些更新广播给其他连接的客户端,从而实现多人协同在线表格填写的功能。在上述代码中,通过创建WebSocket连接并监听服务器发送的表格数据,你可以在。中保存当前表格的数据。当其他用户更新表格时,服务器会发送。方法来更新本地的表格数据。事件,然后你可以调用。

2023-07-16 15:45:18 1436

原创 koa2实现文件上传接口

【代码】koa2实现文件上传接口。

2023-06-19 08:03:46 397

原创 从0打1 用node express vite搭建一个博客系统系列(完结)

通过这个博客系统,用户可以方便地管理和浏览文章,以及与其他用户进行互动和讨论。系统使用了最新的Vue 3版本,提供了更好的性能和开发体验。基本的增删改查功能:支持对文章进行基本的增加、删除、修改和查询操作。分类列表:展示不同分类的文章,包括技术栈、精品短文和热门文章。回收站:将已删除的文章移至回收站,可以进行恢复或永久删除。浏览历史:记录用户的浏览历史,方便查看之前浏览过的文章。搜索:提供文章标题搜索功能,方便用户查找感兴趣的文章。详情:点击文章标题可以查看文章的详细内容。

2023-06-11 21:46:09 1015 1

原创 在uniApp中使用Uni API进行网络请求的示例

现在,当你调用封装的请求方法时,只需要传入相对路径,它会自动与baseURL拼接为完整的请求地址。

2023-06-05 18:13:22 258

原创 uinapp学习笔记

1 vue-cli (只用开发 h5 或者只开发微信小程序端)2 hbuilderx 可视化(多端开发,只开发手机app )创建项目 my-project 项目名称。uniapp项目开发方式分为两种。uinapp生态介绍。

2023-05-15 23:27:16 195

原创 配置vue的模板语法

如果使用vue2的模板就在页面输入vue2就会自动生成模板,vue3也一样操作。可以输入快捷指令 ctrl + shift + p。文件->首选项->配置用户代码片段。搜索vue.json。

2023-05-13 11:00:18 338

原创 vue关于@无法找到文件报错

如果在Vite项目中使用@无法找到文件,通常是因为未正确配置路径别名(path alias)导致的。在Vite中,您可以使用vite.config.js文件来配置路径别名。请确保将路径别名配置为与您的项目结构和实际路径相匹配。在上述示例中,我们使用alias选项来配置路径别名。通过@别名,我们将./src目录与@关联起来。//配置less @ 跨域。

2023-05-11 20:09:04 3343

原创 vue的script的三种写法

在setup函数中定义了handleSearch方法和clearSearch方法,并将它们作为返回值暴露给模板使用。请注意,使用Composition API时,我们不再使用data选项和传统的Options API写法,而是在setup函数中定义响应式数据和方法,并通过返回值暴露给模板使用。使用Composition API的好处是可以将相关的逻辑进行组合,而不是按照选项的方式进行划分。使用 script setup 语法,我们可以直接在脚本块中定义变量和方法,无需再通过return将它们导出。

2023-05-11 19:58:08 2349

原创 从0打1 用node express vite搭建一个博客系统系列8

【代码】从0打1 用node express vite搭建一个博客系统系列8。

2023-05-09 23:49:09 669

原创 从0打1 用node express vite搭建一个博客系统系列6

更好的兼容性:使用 Less 编写样式后,可以通过编译将其转换为标准的 CSS 代码,因此可以在所有支持 CSS 的浏览器中使用。导入和模块化:Less 支持通过 @import 导入其他 Less 文件,使样式的模块化管理更加方便。扩展性和可定制性:通过使用 Less,您可以轻松地为样式添加自定义的功能和扩展,编写自己的 Mixins、函数和样式库,满足特定的设计需求。嵌套规则:Less 允许您在样式规则内部嵌套其他规则,减少了选择器的重复书写,使样式层级更加清晰,易于理解和维护。

2023-05-08 11:05:59 789

原创 从0打1 用node express vite搭建一个博客系统系列7

更好的兼容性:使用 Less 编写样式后,可以通过编译将其转换为标准的 CSS 代码,因此可以在所有支持 CSS 的浏览器中使用。导入和模块化:Less 支持通过 @import 导入其他 Less 文件,使样式的模块化管理更加方便。扩展性和可定制性:通过使用 Less,您可以轻松地为样式添加自定义的功能和扩展,编写自己的 Mixins、函数和样式库,满足特定的设计需求。嵌套规则:Less 允许您在样式规则内部嵌套其他规则,减少了选择器的重复书写,使样式层级更加清晰,易于理解和维护。

2023-05-08 00:36:12 662

原创 从0打1 用node express vite搭建一个博客系统 系列5

在项目的 src 目录下创建一个新的文件夹,例如 router,然后在该文件夹下创建一个新的文件 index.js,作为路由的配置文件。在项目的 src/views 目录下创建路由组件,例如 Home.vue 和 About.vue。在这些组件中定义路由页面的内容。在需要使用路由的地方,例如 App.vue 或其他组件中,可以通过使用 组件和 组件来创建链接和展示路由页面。安装路由 ,以及配置路由 实现路由跳转。

2023-05-08 00:09:22 692

原创 从0打1 用node express vite搭建一个博客系统 系列4

在app.vue 添加ant-design的按钮。输入指令 npm run dev 看看效果。vite 引入ant-design框架。可以用插件 reset-css 完成。还有按需导入,可以看看官网的操作。ant-design框架地址。清空vite的全局css样式。在main.js 添加。好了前期工作基本完成。

2023-05-08 00:00:12 689

原创 从0打1 用node express vite搭建一个博客系统 系列2

文章列表:展示博客文章的列表,按照时间或其他排序方式展示,并提供分页功能,让读者可以方便地浏览和阅读您的文章。用户认证和权限管理:如果您希望控制访问和管理博客内容的权限,可以实现用户认证功能,并设置不同用户角色的权限。SEO优化:优化博客网站的结构和内容,以便更好地被搜索引擎收录和排名,增加网站的曝光度和访问量。社交分享:集成社交分享功能,让读者可以方便地分享您的文章到各个社交媒体平台,扩大文章的影响力。文章分类和标签:为您的文章添加分类和标签,使读者可以根据不同主题或关键词查找相关文章。

2023-05-07 23:12:33 660

原创 从0打1 用node express vite搭建一个博客系统 系列3

文章列表:展示博客文章的列表,按照时间或其他排序方式展示,并提供分页功能,让读者可以方便地浏览和阅读您的文章。用户认证和权限管理:如果您希望控制访问和管理博客内容的权限,可以实现用户认证功能,并设置不同用户角色的权限。SEO优化:优化博客网站的结构和内容,以便更好地被搜索引擎收录和排名,增加网站的曝光度和访问量。社交分享:集成社交分享功能,让读者可以方便地分享您的文章到各个社交媒体平台,扩大文章的影响力。文章分类和标签:为您的文章添加分类和标签,使读者可以根据不同主题或关键词查找相关文章。

2023-05-07 23:06:18 657

原创 从0打1 用node express vite搭建一个博客系统系列1

创建Back-end文件夹 在文件夹中用终端打开 输入 npm init 初始化 然后一直按enter就ok安装基本的npm 包在package.json添加 以后启动服务器 直接创建 app.js在终端输入node app.js 端口服务在 http://127.0.0.1:4040注意:有时候运行node app.js 报错 could not find xxx这是在下载npm包的时候有可能丢包了 再次下载报错的包就好了。

2023-05-04 10:50:45 1428

原创 JavaScript实现弹幕功能

【代码】JavaScript实现弹幕功能。

2023-04-28 09:42:38 1895

原创 JavaScript闭包

闭包是指一个函数和其相关的引用环境组合而成的实体。换句话说,闭包是一个函数和其可以访问的外部变量所组成的一个整体,可以在函数外部访问这些变量。

2023-04-25 11:04:57 1327

原创 在Koa2中,ctx.request.body和ctx.query的主要区别

以下是获取请求体中的参数的示例代码。在Koa2中,需要使用koa-bodyparser中间件来解析请求体,然后使用ctx.request.body属性来获取请求体中的参数。ctx.query用于获取URL查询参数,而ctx.request.body用于获取请求体中的参数。开头,&连接的键值对参数。在Koa2中,ctx.request.body和ctx.query的主要区别在于获取参数的位置不同。对象中的属性名就是参数的键,属性值就是参数的值。以上是Koa2中获取URL查询参数和请求体参数的示例代码,

2023-04-23 17:28:29 2814

原创 用express实现token鉴权

再node_modules创建通缉目录 server和web utils文件方便后续操作。接下来再web文件下创建login.html和reg.html两个文件。每次获取数据的时候必须请求头携带token判断token是否有效登录。根据图片创建数据表的users 和subject两个文件。后端返回的token储存再local Storage中。创建路由server/route/index.js。现在就可以模拟前后端分离token 鉴权了。创建db.js连接数据库。npm下载依赖包完成后。

2023-04-17 12:13:49 1557

原创 绝对定位和相对定位的区别

这个例子与前一个例子非常相似,只是我们将子级容器(inner-box)的定位属性变为相对定位。相对定位的子级元素会相对于自身的初始位置进行偏移,而不是相对于离它最近的已定位祖先元素。在这个示例中,我们将子级容器相对于它的初始位置向下和向右移动了50px。绝对定位和相对定位都是css中的定位属性,它们的主要区别在于定位参照物的不同。绝对定位的参照物是离它最近的已定位的祖先元素,如果没有已定位祖先元素,则参照物是body元素。而相对定位的参照物是元素自身在文档流中的位置。

2023-04-15 11:12:15 1772

原创 Vue-router路由

vue中的路由默认时hash模式,使用 URL 的 hash 来模拟一个完整的 URL,于是当 URL 改变时,页面不会重新加载。案例:用vue的嵌套路由实现一个Tab栏案例 要求页面刷新时,可以监测当前路由地址,从而切换tab栏当前项,每次页面更新,就监测路由地址,从而切换tab栏当前项,定义一个方法,专门用来判断当前路由地址。1、hash模式下,仅hash符号之前的内容会被包含在请求中,如 http://www.xxx.com, 因此对于后端来说,即使没有做到对路由的全覆盖,也不会返回404错误;

2023-04-15 11:04:41 1343

原创 git使用的方法

git有什么作用,大家应该也知道了,我也不在详细说明。

2023-04-15 10:28:37 1341

原创 vue监听input搜索框是否有输入数据,如果有显示搜索的数据,如果没有则显示全部数据

在Vue中可以使用计算属性(computed)来实现监听搜索框输入数据的功能。这样就可以实现搜索框输入数据时显示搜索的数据,没有输入数据则显示全部数据的功能。方法过滤出符合条件的数据;如果没有输入数据,则返回全部数据。会根据搜索框的输入数据来过滤数据。如果搜索框有输入数据,则使用Array的。

2023-04-14 23:45:55 2721

原创 vue3新特性

在模板中,我们可以直接使用这些响应式对象和计算属性。Composition API:Composition API 是 Vue 3 中新增的一种组合式 API,它使得组件逻辑代码更加清晰、可读性更高,同时也更容易复用。Fragments:Fragments 是 Vue 3 中新增的一个特性,用于解决多个组件必须包含在一个父元素中的问题。Teleport:Teleport 是 Vue 3 中新增的一个组件,用于实现跨组件层级的 DOM 元素移动功能。

2023-04-14 15:37:36 1595

原创 vue实现搜索方法,将搜索到的数据替换为原来的数据

【代码】vue实现搜索方法,将搜索到的数据替换为原来的数据。

2023-04-14 15:30:08 1627

原创 前端刷新页面的方法

【代码】前端刷新页面的方法。

2023-04-14 15:25:40 1725

原创 elementui实现弹框输入

【代码】elementui实现弹框输入。

2023-04-14 15:20:23 2483

原创 总结css的知识点和css3的新特性

动画、过渡和变形都是用来实现元素的动态效果,常用的属性有animation、transition、transform等。定位是指通过CSS属性控制元素的位置,常用的定位属性有position、top、right、bottom、left等。选择器是用来选择HTML元素的一种方式,包括标签选择器、ID选择器、类选择器、伪类和伪元素等。动画(animation)、过渡(transition)和变形(transform)变形(transform)功能,用来对元素进行旋转、倾斜、缩放、平移等操作。

2023-04-14 00:03:43 1369

原创 css中的伪类和伪元素的区别

在上述示例中,::before和::after就是两个常用的伪元素,分别用于在元素前后添加内容,并通过CSS样式对其进行定义。此外,还有其他常用的伪元素,例如::first-letter、::first-line等。在上述示例中,:hover和:visited就是两个常用的伪类,分别用于选择鼠标悬停和已访问的链接,并通过CSS样式对其进行定义。需要注意的是,伪类和伪元素都不能用于选择ID选择器(#id)、属性选择器([attr])和类选择器(.class),只能用于标签选择器(tag)。

2023-04-13 23:55:20 1407

空空如也

空空如也

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

TA关注的人

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