diff --git a/src/datetime-picker/index.js b/src/datetime-picker/index.js
index 105b7225d..5145e77ac 100644
--- a/src/datetime-picker/index.js
+++ b/src/datetime-picker/index.js
@@ -1,11 +1,14 @@
import { ref } from 'vue';
-import { createNamespace } from '../utils';
+import { pick, createNamespace } from '../utils';
import { useExpose } from '../composition/use-expose';
import TimePicker from './TimePicker';
import DatePicker from './DatePicker';
const [createComponent, bem] = createNamespace('datetime-picker');
+const timePickerProps = Object.keys(TimePicker.props);
+const datePickerProps = Object.keys(DatePicker.props);
+
export default createComponent({
props: {
...TimePicker.props,
@@ -20,8 +23,20 @@ export default createComponent({
});
return () => {
- const Component = props.type === 'time' ? TimePicker : DatePicker;
- return ;
+ const isTimePicker = props.type === 'time';
+ const Component = isTimePicker ? TimePicker : DatePicker;
+ const inheritProps = pick(
+ props,
+ isTimePicker ? timePickerProps : datePickerProps
+ );
+
+ return (
+
+ );
};
},
});
diff --git a/src/datetime-picker/test/__snapshots__/demo.spec.js.snap b/src/datetime-picker/test/__snapshots__/demo.spec.js.snap
index 83661e4d8..dc18a76a5 100644
--- a/src/datetime-picker/test/__snapshots__/demo.spec.js.snap
+++ b/src/datetime-picker/test/__snapshots__/demo.spec.js.snap
@@ -2,7 +2,7 @@
exports[`should render demo and match snapshot 1`] = `
-
+
@@ -176,7 +176,7 @@ exports[`should render demo and match snapshot 1`] = `
-
+
@@ -253,7 +253,7 @@ exports[`should render demo and match snapshot 1`] = `
-
+
@@ -405,7 +405,7 @@ exports[`should render demo and match snapshot 1`] = `
-
+
@@ -641,7 +641,7 @@ exports[`should render demo and match snapshot 1`] = `
-
+
@@ -1075,7 +1075,7 @@ exports[`should render demo and match snapshot 1`] = `
-
+
@@ -1325,7 +1325,7 @@ exports[`should render demo and match snapshot 1`] = `
-
+
@@ -1456,7 +1456,7 @@ exports[`should render demo and match snapshot 1`] = `