Vue点击调用组件以及调用事件
文章描述:
Vue点击调用组件以及回调事件方法
vue
<template>
<div>
<div v-for="(item,index) in list" :key="index" @click="ck(index)">
{{item.id}}
<inputui v-if="item.has" :inputText="inputText" @check="btn"></inputui>
</div>
</div>
</template>
<script>
import inputui from '@/components/input';
export default {
components:{
inputui
},
data(){
return{
list:[
{id:1,has:false},
{id:2,has:false},
{id:3,has:false}
],
inputText:''
}
},
created() {
},
methods:{
// 组件回调事件
btn(val){
console.log(val)
},
// 点击事件
ck(index){
// console.log(index)
this.list.forEach((item,index)=>{
item.has = false
})
this.list[index].has = true
this.inputText = this.list[index].id
}
}
}
</script>
<style>
</style>
组件
<template>
<div class="container">
<div class="item" @click="click">
<input type="text" v-model="text"/>
</div>
</div>
</template>
<script>
export default{
props:{
inputText:{
type:[Number,String],
default:''
}
},
data(){
return{
text:this.inputText
}
},
methods:{
click(){
let str = 123;
this.$emit('check',str)
}
}
}
</script>
<style>
.item{
background: #eee;
padding: 10px 10px;
}
</style>
发布时间:2023/06/01
发表评论