自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 vue源码实现(第一章)defineProperty劫持数据

在vue源码里vm挂载了一个_data属性,_data就是拷贝的一份data对象,因此在这一步就会形成了只能通过vm._data.xxx访问data对象,所以在vue里就使用了一个proxy函数代理转发。因为vue2里是对data里的属性重新定义了,相当于把data里面的属性重新重写了一遍,并给属性添加上对应的get,set方法。vue源码defineProperty主要内容(以下并非源码,本人简化过后的)以下为简化过的代理实现this访问data的主要代码。"重新定义"data里的属性。

2024-02-04 23:12:06 303

原创 vue3 具名插槽、作用域插槽、动态插槽

父组件在使用子组件的标签添加 #default="{data}“即可使用data数据,或者v-slot=”{data}"也可以。父组件在使用子组件时需要使用template标签,并加入v-slot属性——v-slot:插槽名,简写形式 #插槽名。动态插槽是将具名插槽的名称动态设置,在子组件定义插槽名称,父组件动态设置需要插入哪个位置。具名插槽主要用于父组件使用子组件时,需要插入多个标签到子组件中不同的位置。父组件在使用子组件的标签里面插入一个div即可。子组件可以将数据传递给父组件的插槽中使用。

2023-08-26 03:14:35 941

原创 vue3中的 $ref 和 $parent

/ Ref<InstanceType<typeof Son> | null> 表示它可以持有Son组件的实例类型或null。子组件获取父组件的属性与方法,需要传入$parent,同时,父组件也需要使用。// 获取子组件dom与实例,变量名需要与子组件的ref一致。// 父组件要获取该组件的属性和方法需要暴露出去。

2023-08-13 22:41:02 567 1

原创 vue3——全局事件总线(mitt)

@param {string} '' 事件类型,需与接收方一致。* @param {function} () 回调。* @param {string} '' 事件类型。* @param {function} () 回调。该文件用于展示兄弟组件传值,引入两个子组件。在main.ts中引入。

2023-07-31 04:01:01 737

原创 vue3组合式api——父子组件相互传参、路由传参

子组件传值给父组件,主要是子组件通过defineEmits注册一个自定义事件,然后触发emit去调用该自定义事件,并传递参数给父组件。其他的与vue2一致.在vue3中是使用vue-router中的useRouter、useRoute,就相当于$router和route。在vue3里,父子组件props的传值的区别主要在于子组件接收。// 使用defineEmits注册一个自定义事件。去跳转并传参的,接收参数是。"我是子组件传给父组件的值"// 这部分与vue2一致。'子组件传值 :>> '

2023-07-30 01:18:30 1721

原创 vue3+ts+vite——项目搭建

安装npm i sass --save,然后在页面使用即可。然后按步骤选择相应选项。

2023-07-29 21:36:19 241

原创 vue-admin-template 登录改造

本文为修改vue-admin-template第一步,将请求地址和状态码改为自己项目的地址,并成功进入页面。

2023-07-21 00:21:38 490

原创 Vuex模块化后使用上的区分

【代码】Vuex模块化后使用上的区分。

2023-07-19 23:55:22 48

原创 HTML5 audio标签

控制音频的播放、暂停、重新播放、设置播放倍速、设置音量、获取进度、原生步进器控制播放进度。

2023-07-17 22:40:13 230

原创 js项目常用数据处理算法——转树状结构、数组分页、模糊查询、数组去重、时间格式化、金额格式化、自定义复制粘贴

div class = "empty-font" > 选中这一段文字,点击 ctrl + C 或 者右键选择复制 < / div > < script type = "text/javascript" > //监听整个页面的 copy 事件 document . addEventListener("copy" , function(e) {

2023-07-16 22:44:58 111

原创 js敏感词检测、替换、过滤

很多人因为找不到更多的敏感词,自己一个个添加敏感词的写又太麻烦,所以我在去年去网站爬了一点敏感词下来,敏感词类包括了 f罪、z治、b力、s情、x腥、r骂等。因考虑到词库记录不完整,为了方便使用者后续自行添加,打算不进行压缩。效果:输入一个字符串和替换字符,检测该字符串是否存在敏感词,存在则用替换词替换掉敏感词,返回新的字符串。效果:输入一个字符串,检测该字符串是否存在敏感词,返回Boolean。

2023-07-16 20:22:28 1977 1

原创 mavon-editor上传图片

【代码】mavon-editor上传图片。

2022-10-11 21:02:51 1314 1

原创 Vue图片裁剪上传 vue-cropper

vue+iview裁剪图片

2022-10-04 01:32:13 1940 2

原创 JavaScript别踩白块

js-别踩白块简单面向过程别踩白块看图上代码<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title></head>&lt

2020-11-08 14:02:08 776

空空如也

空空如也

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

TA关注的人

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