vue 使用 ref 添加删除类名
时间: 2023-07-11 10:06:01 浏览: 60
可以使用 `ref` 来获取元素的引用,然后使用 `classList` 对象来添加和删除类名。示例代码如下:
```html
<template>
<div>
<button @click="toggleClass">Toggle Class</button>
<div ref="myDiv" class="my-class">My Div</div>
</div>
</template>
<script>
export default {
methods: {
toggleClass() {
const myDiv = this.$refs.myDiv
myDiv.classList.toggle('active')
}
}
}
</script>
<style>
.my-class {
background-color: #eee;
padding: 20px;
}
.active {
background-color: #ccc;
}
</style>
```
在上面的示例中,我们使用 `ref="myDiv"` 来获取元素的引用,然后在 `toggleClass()` 方法中使用 `classList.toggle()` 来切换 `active` 类名。这样,每次单击按钮时,就会添加或删除 `active` 类名,从而改变元素的背景颜色。
相关问题
vue3点击添加类名
要在Vue3中通过点击事件添加类名,可以使用以下步骤:
1. 在模板中添加一个元素,并绑定一个点击事件:
```
<template>
<div @click="addClassName">点击我添加类名</div>
</template>
```
2. 在Vue组件的`methods`中定义`addClassName`方法:
```
<script>
export default {
methods: {
addClassName() {
// 在这里通过ref获取元素,并添加类名
this.$refs.myElement.classList.add('my-class')
}
}
}
</script>
```
3. 在`<div>`元素上添加一个`ref`属性,以便在`methods`中访问该元素:
```
<template>
<div @click="addClassName" ref="myElement">点击我添加类名</div>
</template>
```
这样,当点击元素时,`addClassName`方法将获取元素的引用,并在该元素上添加一个名为`my-class`的类名。
vue的$refs如何添加class类名
可以通过`$refs`属性访问Vue组件中的DOM元素,然后使用`classList`属性来操作元素的class。例如:
```html
<template>
<div ref="myDiv">Hello World</div>
</template>
```
```javascript
<script>
export default {
methods: {
addClass() {
this.$refs.myDiv.classList.add('my-class');
},
removeClass() {
this.$refs.myDiv.classList.remove('my-class');
}
}
}
</script>
```
在上面的例子中,我们在组件中定义了一个带有`ref`属性的`div`元素,然后通过`$refs`属性获取该元素。接着,我们可以使用`classList`属性的`add`和`remove`方法来添加或删除指定的class类名。