子组件comDatePicker.vue
<template>
<div>
<el-date-picker
:clearable="false"
v-model="datePickerObj.value"
type="date"
placeholder="选择日期"
value-format="yyyy-MM-dd"
@change="dataChange">
</el-date-picker>
</div>
</template>
<script>
export default {
props: {
value: {
type: String,
},
datePickerObj: {
type: Object
}
},
data() {
return {
};
},
methods: {
// 选择日期
dataChange(data) {
this.$emit("dataChange", data);
},
}
};
</script>
父组件
<template>
<div>
<com-date-picker @dataChange="dataChange" :datePickerObj = "datePickerObj = patentOfficeDate"></com-date-picker>
</div>
</template>
<script>
import comDatePicker from "./comDatePicker";
export default {
components: {
comDatePicker
},
data() {
return {
datePickerObj:{},
patentOfficeDate:'',
dateObj:{
year:'2017',
month:'06',
day:'12'
},
}
},
methods:{
// 拼接年月日,传到子组件
setDate() {
this.patentOfficeDate= {
value:this.dateObj.year + "-" + this.dateObj.month + "-" + this.dateObj.day
}
},
//接收子组件comDataPicker传过来的值,拆分年 月 日
dataChange(data) {
var patentOfficeDateArr = this.patentOfficeDate.value.match(/\d+/g);
this.obj.请求内容.专利局发出通知的日期.年 = patentOfficeDateArr[0];
this.obj.请求内容.专利局发出通知的日期.月 = patentOfficeDateArr[1];
this.obj.请求内容.专利局发出通知的日期.日 = patentOfficeDateArr[2];
},
}
}