网站首页 > 技术文章 正文
$refs获取dom元素
今天我们主要说一下几点
1、vue 获取普通元素(基础)
2、vue 获取列表(基础)
一、vue获取dom节点 (普通元素)
我们之前获取页面上的dom元素,很容易,
比如原生js的
document.getElementsByClassName
jqurey的
$('类名')
而vue是一个MVVM框架,数据驱动,尽量能不操作dom层就不要操作,但是对于一些场景,我们不得不操作,那么怎么操作呢,其实也很简单 用ref
首先我们先将需要获取的那个元素绑定ref属性,例如input,然后我们在页面渲染完后,获取这个元素节点
<div>
<input type="text" value="123" ref="input">
</div>
export default {
data(){
return{
}
},
mounted() {
console.log(this.$refs.input)
}
}
打印出来的和我们原生js获取出来的一样,可以直接操作input的属性和方法
二、获取列表
获取列表和元素一样,同理我们在li上绑定ref
<ul >
<li v-for="(item,index) in list" :key="index" ref="list">
{{item}}
</li>
</ul>
然后在页面渲染完成后,通过this.$refs.list 获取li信息,并添加随机字体颜色
export default {
data(){
return{
list:[1,2,4,5,6,7,8]
}
},
mounted(){
console.log(this.$refs.list)
//添加随机颜色
this.$refs.list.forEach((v)=>{
v.style.color ='#' + Math.floor(Math.random()*1000000)
})
}
}
我们看一下效果:
我把获取组件这一部分放在了下一节,子父组件之间属性和方法的操作,这样更好理解
- 上一篇: 为什么vue $nextTick可以获取到更新后的dom?
- 下一篇: vue进阶(vue进阶面试题)
猜你喜欢
- 2024-10-29 Vue3 - 表单的输入与绑定(vue实现表单)
- 2024-10-29 67、Vue 中如何实现一个虚拟 DOM?说说你的思路(高薪常 问)
- 2024-10-29 Vue中配合clipboard.js实现点击按钮复制内容到剪切板
- 2024-10-29 「绍棠」 Vue面试整理 一(vue项目面试中怎样去说)
- 2024-10-29 深入浅出虚拟 DOM 和 Diff 算法,及 Vue2 与 Vue3 中的区别
- 2024-10-29 这大概是理解VUE的虚拟DOM最简单的文章了
- 2024-10-29 vue-这应该是最基础了吧(vue vh)
- 2024-10-29 深入了解Vue 3中onBeforeMount钩子和DOM元素的获取时机
- 2024-10-29 Vue.js教程(六)--Vue实例的属性和方法
- 2024-10-29 Vue中多个元素、组件的过渡及列表过渡的方法示例
- 1507℃桌面软件开发新体验!用 Blazor Hybrid 打造简洁高效的视频处理工具
- 511℃Dify工具使用全场景:dify-sandbox沙盒的原理(源码篇·第2期)
- 487℃MySQL service启动脚本浅析(r12笔记第59天)
- 467℃服务器异常重启,导致mysql启动失败,问题解决过程记录
- 465℃启用MySQL查询缓存(mysql8.0查询缓存)
- 445℃「赵强老师」MySQL的闪回(赵强iso是哪个大学毕业的)
- 424℃mysql服务怎么启动和关闭?(mysql服务怎么启动和关闭)
- 421℃MySQL server PID file could not be found!失败
- 最近发表
- 标签列表
-
- c++中::是什么意思 (83)
- 标签用于 (65)
- 主键只能有一个吗 (66)
- c#console.writeline不显示 (75)
- pythoncase语句 (81)
- es6includes (73)
- windowsscripthost (67)
- apt-getinstall-y (86)
- node_modules怎么生成 (76)
- chromepost (65)
- c++int转char (75)
- static函数和普通函数 (76)
- el-date-picker开始日期早于结束日期 (70)
- js判断是否是json字符串 (67)
- checkout-b (67)
- localstorage.removeitem (74)
- vector线程安全吗 (70)
- & (66)
- java (73)
- js数组插入 (83)
- linux删除一个文件夹 (65)
- mac安装java (72)
- eacces (67)
- 查看mysql是否启动 (70)
- 无效的列索引 (74)