要在 Vue 3 中实现点击按钮让图片旋转 90 度,你可以使用 CSS 转换和 Vue 的事件处理来完成。这里是一个基本的示例:
首先,在你的组件的模板中,添加一个按钮和一个应用转换的图像:
<template> |
|
<div> |
|
<button @click="rotateImage">旋转图片</button> |
|
<img :class="{ rotated: isRotated }" src="your-image-source.jpg" alt="Image" /> |
|
</div> |
|
</template> |
在这里,:class="{ rotated: isRotated }"
是一个绑定,它会动态地将rotated
类添加到图像中,当isRotated
为true
时。
然后,在你的组件的<script setup>
中,定义isRotated
和处理按钮点击事件的函数:
<script setup> |
|
import { ref } from 'vue'; |
|
const isRotated = ref(false); |
|
function rotateImage() { |
|
isRotated.value = !isRotated.value; |
|
} |
|
</script> |
在这里,ref
是 Vue 的一个函数,用于创建一个响应式引用。isRotated
是一个响应式引用,当它的值变化时,任何绑定到它的类或属性都会更新。
最后,在你的组件的 CSS 中,定义rotated
类来应用转换:
<style> |
|
.rotated { |
|
transform: rotate(90deg); |
|
} |
|
</style> |
在这里,transform: rotate(90deg);
将元素旋转 90 度。
请注意,这个示例中的旋转是无限循环的。如果你只想旋转一次,你可以在rotateImage
函数中设置一个额外的状态变量来跟踪旋转次数,并在适当的时候重置isRotated
。