- 博客(70)
- 收藏
- 关注
原创 标签自动滚动到底部(实时滚动)
最近做 AI 对话相关项目时遇到一个需求,AI 回答的内容可能会很长,且是一段一段回复的,这时需要在回答时自动将页面滚动到最底部,以显示最新的内容。
2024-01-31 20:33:12
523
原创 input、textarea禁止输入空格,并绑定回车事件
举例(其它组件库原理相同),在组件库中,上面的方法无效,需要采用其它方法。回车会换行,所以需要处理一下,回车目的是提交,可以将内容清空。与上面一样,使用 @keydown.enter 即可绑定。如果觉得一个一个禁止太麻烦,也可以全局统一禁止。方法没有用,不要用那个方式。
2024-01-30 10:46:21
1743
原创 支付宝小程序开发踩坑笔记(支付宝、学习强国小程序)
可惜这样也只能实现一半,与预期还是有出入,因为虽然值没有空格了,但是页面展示中依然会有空格。如果每次请求都要完整的写一遍上面的内容,那真的很令人绝望,尤其是需要改变服务器地址时,每次都全局替换,也绝对不是一个好的方式。这样的写法在低版本中未必支持,且即使不支持,小程序也不会提示,因此再遇到不支持的语法时,很难定位问题。如果仅是这样,只能实现双向绑定,无法达到禁止输入空格的预期,所以对数据进行处理。,不过能力很弱,仅支持 RSA 加解密能力,如需更多加解密的能力,建议使用。编解码函数,不幸的是,与。
2024-01-20 17:50:36
1153
1
原创 解决vue3使用iconpark控制台预警提示问题
最近在项目中使用来管理图标,一切都很顺利,引入链接后,图标正常显示,没有报错。但是控制台却发出了预警信息。虽说不影响使用,但看着着实难受,于是研究了一下,成功解决预警提示。
2023-12-06 20:48:46
1664
4
原创 vue3项目中使用富文本编辑器
适配 Vue3 的富文本插件不多,我看了很多插件官网,也有很多写的非常棒的,有UI非常优雅让人耳目一新的,也有功能非常全面的。Quill,简单易用,功能全面。editorjs,UI极其优雅,非常好看。ckeditor-5,一款完全重写的富文本编辑器,支持现代 Web 标准,例如模块化架构、原生语义化输出等。还有很多优秀的富文本编辑器插件,就不一一列举了。
2023-11-22 19:50:30
11489
1
原创 前端使用 snappyjs 压缩数据并解压
如此简单的文档,想来不是大家希望看到的。确实,单纯的压缩和解压就是这样操作,但文档中提到了这样一段话。安装完成后使用下面的方法引入,看项目需求,个别页面用到,局部引入即可。文件进行压缩和解压,所以需要对数据进行二进制转换与还原。压缩和解压很简单,按照 github 上文档操作如下。也可以使用下面的方法引入(不推荐)。
2023-10-19 14:06:51
707
原创 xshell使用方法 + nginx配置(超详细)
/ 仅显示文件名,一行展示,放不下则换行 ls // 显示目录详细信息,每行显示一个文件和其基本信息,推荐使用 ls -la // 列出当前目录下以字母 a 开头的所有文件 ls a*// 给出当前目录下以.html结尾的所有文件 ls -l *.html// 打印当前工作目录的完整路径 pwd。
2023-10-15 00:19:22
2221
原创 将C语音代码编译成JS(上:安装并配置 Emscripten 环境变量)
Emscripten官网官网有安装教程,但有些细节没有讲清楚,本文会很详细的讲解每一步。到这里Emscripten已经成功安装完成了,配置完 PATH 后即可在全局调用此命令,接下来就可以将 C 代码编译成 JS 和 wasm 文件了。本文仅仅是讲解 Emscripten 安装过程,有关编译过程及编译后如何使用 JS 文件,限于篇幅,会在后面更新另一篇博客去详细描述。END。
2023-09-10 10:00:00
1140
原创 Vue登录后添加动态路由并跳转(超详细)
Vue3TypeScript有这样一个需求,系统默认只有最基础的几个路由,如登录、404等,其它路由需要在登录后动态添加。系统没有固定首页,登录完成后跳转至动态菜单的第一个菜单页。
2023-07-18 17:56:15
3075
2
原创 Vue3项目Ant-Design-Vue汉化(a-date-picker等组件)
组件库某些组件默认是英文显示的,如时间选择等组件。这些组件的显示需要用户手动去进行汉化。官方文档对此也给出了说明及示例,但截止到本篇博客发布日期,示例与实际项目配置存在小幅度出入。我也因此踩了一些坑,所以萌生了写这一篇博客的念头,分享一下本次经历,尽量避免其他人和我踩了相同的坑。
2023-07-03 16:10:28
1380
3
原创 此导入从不用作值,必须使用 “import type“ ,因为 “importsNotUsedAsValues“ 设置为 “error“。
最近电脑更新了一次系统,重启后在VsCode中打开项目 ,发现原本正常的代码出现了一堆语法提示。网上搜了一下,没有找到关于此问题的回答,不知道我是不是第一个遇到的。在此记录一下这次的经历,如果有其他人遇到,可以避免再次踩坑。
2023-06-29 15:49:47
3287
原创 浅析 Map、Set 类型
Map数据结构类似于JavaScript中的对象,不过对象的键只能是字符串, Map 的键可以是任意类型的值。需要注意的是,Map 的键是跟内存地址绑定的,因此有些看似相同的键,值却是不一样的,这一点会在下文举例说明。Map的键和内存地址绑定带来的好处是避免了同名属性碰撞/冲突问题,因此我们在对别人的库进行扩展时,不用担心会破坏原本的值。Map 可以接受一个数组作为参数,但该数组的成员需要是一个个表示键值对的数组。
2023-06-15 16:21:20
603
原创 Vue组件传参方式总结(Vue2、Vue3)
依赖注入不仅可以父子传值,也可以传递给更深层次的子组件。如果提供的值是响应式数据,那么注入的值也是响应式的。所谓注入就是读取的意思。的值是实时同步的,所有组件都可以访问到,由于内容过多,本文不做详细介绍,附另一篇详细介绍。Pinia 使用方法内容有点多,本文限于篇幅,不做介绍,附一篇详细介绍使用方法的博客链接。的写法接收时需要断言类型,如果不确定是否使用需要加一个。如果是对象类型,需要使用。如果是对象类型,需要使用。使用方法的博客链接。
2023-06-13 15:56:56
1370
原创 前端上传图片并回显
考虑到上传文件是会多次使用的,所以把核心部分抽离出来,单独写到一个文件中。以下代码是用 TypeScript 写的,如使用 JavaScript 开发,去除类型断言即可。回显有两种方法,一种是长传到服务器,再将从服务器返回的文件流或图片地址展示出来;另一种是将图片转成 base64 ,再将 base64 展示出来。表示只能使用拍照,在移动端可以使用。// 清除 input 中的值。隐藏,通过点击按钮触发。
2023-06-06 15:55:14
2616
原创 JS实现深拷贝的几种方法
通过递归的方式深度遍历对象,将每个属性的值进行复制。需要处理被复制对象为值类型的情况以及属性值中包含对象的情况。需要注意的是,为了防止循环引用导致死循环,需要记录已经遍历过的对象。是一个一致性、模块化、高性能的。
2023-05-27 16:50:18
4601
原创 JavaScript闭包
在了解闭包之前,需要先了解几个概念,这样更容易理解闭包的优缺点。js中的基础类型、对象、函数等内容在创建之初会被存储在内存中,当这些内容不再被调用的时候,说明这些内容就没有继续保留的必要了,也就是说,它们已经变成了垃圾。程序在运行过程中会产生很多垃圾,这些垃圾会占用很多的内存,JS引擎会定期对这些垃圾进行清除。无法被及时清除的无用内存。可以简单的理解成变量能被够调用的范围或区域。可以调用其它函数内部变量的函数。说人话就是,在函数内部定义一个新函数,并把这个新函数返回出去,就是闭包。
2023-05-27 15:22:43
1041
原创 微信:H5如何返回至小程序
关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面。关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面。引入版本不能太低,否则不支持,建议不要低于 14 版。备注:支持使用 AMD/CMD 标准模块加载方法加载。注意:方式二在官方文档中没有介绍,但官方将此。关闭当前页面,返回上一页面或多级页面。上了,因此可以使用此方法。(支持https)。
2023-05-27 14:41:31
1408
原创 http不同版本之间的区别
HTTP(Hypertext Transfer Protocol,超文本传输协议)是一种用于传输超媒体文档的应用层协议,当前主要使用的版本有HTTP 1.0HTTP 1.1和HTTP 2。
2023-05-23 20:08:13
1087
原创 Ant-Design报错,TypeError: Q.confirm is not a function
组件在打包上线后报错了,对比文档检查了多次后,发现引入都是正常的。最后思考觉得还是引入方式有问题,尽信书不如无书。于是改变了引入方式,成功解决问题。快捷地弹出确认框报错,本地调试正常,打包后报错,打包工具为 vite。引入方式问题,以下是官方文档介绍。组件这么引入确实没有问题,但是。
2023-05-23 16:38:26
778
原创 JS判断数据类型的方法
不可以用来判断是否为对象类型,因为数组也是对象。此方法还可以用来判断是否为 promise 对象。constructor 也可以判断是否为数组。使用数组的 isArray() 方法判断。可以获取到对象的各种类型。可以获取到对象的各种类型。可以判断数据是否为数组。
2023-05-12 13:48:32
540
原创 判断对象是否为 Promise 对象
错误原因:如果一个对象中有 then 属性,且该属性是函数,就会判断失败。Promise 有 then 方法,判断对象是否有 then 方法。对象,判断是否相等,如果相等,则说明是。判断对象原型是否为字符串。
2023-05-04 20:18:35
4380
原创 Uncaught (in promise) Error: Initialize failed: invalid dom.
仅支持使用原生方法获取。
2023-04-18 20:30:03
1663
原创 Ant Design Vue表格(Table)及分页(Pagination )使用
最近在写一个新项目,UI框架用的是,因为之前一直用的Element UI,没有用过这个组件库,没想到二者区别这么大,因此踩了不少坑,其中就有Table和Pagination,花了一会时间才弄明白,在此记录并分享一下此次经历。注意:是 Vue3 项目。
2023-04-06 20:12:36
12264
1
原创 前端引入外部 js文件
这是最简单的方法,不过想来不是你想要的方法,因为这种方法在项目加载时就会引入,你可能需要在不同环境下判断是否需要引入,比如微信中引入,钉钉中不引入等。所以还有其它方法来引入。只能引入静态文件,外部文件是无法引入的。不过你可以将文件下载下来引入,这也是一种解决办法。你可以在引入前添加判断条件,来决定是否要引入。文件,专门用来写这类内容。
2023-03-31 17:42:54
5169
原创 Cannot read properties of undefined (reading ‘forEach‘)
执行程序前做校验,或者使用默认值语法。类型,建议检查下代码。
2023-03-27 15:43:41
1075
1
原创 Ant Design Vue 按需引入+自定义主题
最近用Vue3vitepinia开发项目,UI组件原本是打算用,不过公司最终决定使用作为新项目的UI组件。无奈之下,我将安装完的卸载换成了。因为是第一次接触组件库,在使用过程中踩了一些坑,为了避免下次还会踩到同样的坑,因此决定写一篇博客,记录一下使用的方法,同时分享自己的经验。组件库当然是要按需引入的,完整引入不符合轻量化的需求,因此,本文仅讲述按需引入的方法。想知道其它引入方法的可以查看Ant Design Vue 官方文档,里面会有详细的说明。是支持自定义主题的,实现方法也很简单。
2023-03-25 16:33:34
2399
原创 Pinia使用方法及持久化存储
Pinia是Vue的专属状态管理库,它允许你跨组件或页面共享状态。它跟Vuex有一定的相似度,但还是有很大的区别。愿意看这篇博客的人,想必已经看过了官方文档,官方文档很详细,包含各种使用情景和理论,因此本文不说理论,只说具体的使用方法,想深入研究的建议去看官方文档,本文适合拿来即用。Pinia 官方文档。
2023-03-24 15:38:48
25967
19
原创 nvm--node版本控制器使用说明
最近在写旧项目vue2和新项目vue3的时候,遇到了node版本兼容问题,一天要安装卸载重复 10 多遍,心态爆炸了,实在扛不住了,于是搜了一下 windows 的 node 版本控制器,没想到还真被我搜到了,就是这个nvm,可以自由的切换 node 版本,整个人瞬间心情愉悦了,下面来记录一下使用方法。
2023-03-14 10:29:53
329
原创 VSCode 开发配置,一文搞定(持续更新中...)
明明很短的标签,一行就可以显示,但是格式化后却频频换行,看着是不是别扭,别着急,按照下面的配置,轻松搞定它。这种密密麻麻的下划线,看着是不是很难受?取消这个配置,即可隐藏它。选择需要的代码片段或者创建一个新的,这里以。
2023-03-09 19:31:19
3450
1
原创 你真的弄懂this指向了吗
在说 this 指向之前,请观察以下代码,并说出它们的输出结果:第 1 组:标准函数let o = {// 输出值是什么?// 输出值是什么?第 2 组:箭头函数let o = {sayColor();// 输出值是什么?// 输出值是什么?call()apply()bind()是为了灵活改变函数this 指向而发明的,他们的主要用途也是用来改变 this 指向。当然,由于这些方法本身的特性,也可以用来做些其它的事情,比如计算数组最大值、最小值等。
2023-03-09 13:54:40
284
原创 JS垃圾回收机制
在说垃圾回收之前,我们首先需要了解的是,什么是垃圾?为什么要进行垃圾回收?JS中的函数,变量,对象等都需要占用一定的内存,当这些东西不再被使用的时候,就变成了垃圾已经调用完毕的函数作用域及其内部的值值为 null 值无法被访问到的值上面已经说了,JS中的所有的变量都会占用内存,当这些变量变成垃圾的时候,如果不进行回收,内存就会被一直占用,随着程序的运行,垃圾也会越来越多,总有一刻,内存会被占满,程序也就无法运行了。
2023-03-08 14:10:42
808
原创 html2canvas使用文档
大部分情况下使用默认配置即可,如有需要,可根据配置项标修改。以 vue 举例,这样写起来比较方便。如果想要将图片导出,可以这样写。
2023-03-06 18:04:14
6328
原创 Flex布局
flex 布局意为弹性布局,也称弹性盒子,任何容器都可以指定为flex 布局。相比于传浮动paddingmarginposition等布局,flex布局更加灵活,更加强大,也更容易实现自适应,同时也可以做到很好的兼容性,当然,这并不是说flex可以取代其它布局,只是在可以使用flex时候,更加推荐使用flex 布局。
2023-03-03 16:49:56
564
原创 浏览器输入url到页面渲染完成经历了哪些步骤
确认字符 (Acknowledge character),在数据通信中,接收站发给发送站的一种传输类控制字符,表示发来的数据已确认接收无误。传输控制协议(Transmission Control Protocol),是一种面向连接的、可靠的、基于字节流的传输层通信协议。的时候就已经开始了,并不是等到接收完成后才开始,解析的过程是自上而下,先解析当前节点的所有子节点,再解析兄弟节点及其子节点。SYN=1, ACK=1, seq=y, ack=x+1(确认字符为1,序列号为x+1,此处seq为。
2023-03-01 21:36:17
2246
原创 CSS把图片设置为背景
先列出几种常用的搭配,方便CV,想了解具体的可以看后面详细介绍第 1 组:刚好填充整个背景区域,不重复background-image : url("~@/路径");第 2 组:从左上角开始,垂直水平重复填充background-image : url("~@/路径");// 宽度 30px ,高度自适应。
2023-02-23 17:56:29
14516
原创 JavaScript的执行顺序
在说JavaScript的执行顺序之前,我们先回答一下以下几组程序的输出结果第 1 组} , 0);output(2);// 2 3 1第 2 组resolve();resolve();resolve();resolve();});});});resolve();});});看完上面两组案例,是不是会产生这样的疑惑,为什么输出的结果是这样的,别着急,下面我们来详细分析。
2023-02-21 17:45:41
364
2
前端文件下载,传入链接或者文件流自动下载文件
2023-03-07
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人