我有一张想要点击的图片。我都尝试过
<img @click="myMethod" src="hasan.jpg">
和
<div @click="myMethod">
<img src="hasan.jpg">
</div>
但是都没有用!最好的方法是什么?
这是完整的代码:
<template>
<div @click="myMethod">
<img src="hasan.jpg" id="hasanStyle">
</div>
</template>
<script>
export default{
data(){
return{
showHasan:true
}
},
methods:{
myMethod(){
showHasan = false
}
}
}
</script>
<style scoped>
#hasanStyle{
position: absolute;
top: 120px;
right: -323px;
}
</style>
答案 0 :(得分:3)
不知道您是否尝试过:
首先有问题->
methods:{
myMethod(){
showHasan = false
}
}
上面的代码应该是:
methods:{
myMethod(){
// because you are accessing data property of vue instance and
// every vue instance make the proxy of data object as a root.
this.showHasan = false
}
}
第二,当您使用myMethod
时,请尝试使用console.log
或alert
来确认您的方法正在处理图像或div。
或看看jsfiddle代码:
new Vue({
el: "#app",
data: {
showHasan: true
},
methods: {
myMethod () {
this.showHasan = false
}
}
})
<div id="app">
<div @click="myMethod">
<img v-if="showHasan" src="https://pbs.twimg.com/profile_images/972154872261853184/RnOg6UyU_400x400.jpg" id="hasanStyle">
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/vue@2.5.17/dist/vue.js"></script>
答案 1 :(得分:0)
您尝试过吗:
<div onClick="myMethod()">
<img src="hasan.jpg" id="hasanStyle">
</div>
myMethod应该是一种方法