FormItem:
<template>
<div class="app">
<p>KFormItem</p>
<slot></slot>
<p v-if="error">{{error}}</p>
</div>
</template>
<script>
import {Type} from "@/constants/common.js"
export default {
data(){
return {
error:'',
value:"ddd"
}
},
methods:{
// 校验的操
check(value){
console.log("." + value)
}
},
mounted(){
this.$on("input",function(value){
console.log("..." + value)
this.value = value;
});
this.$on("check",this.check);
}
}
</script>
<style >
</style>
使用:
由于用到了,插槽,所以必须在 mounted 生命周期方法中 添加监听事件!
也要修改kInput.vue
重点就是 $on ,$emit 主语对象必须是同一个,这样才能接受到事件!
这节用到了插槽!