diff --git a/src/number-keyboard/CollapseIcon.tsx b/src/number-keyboard/CollapseIcon.tsx
new file mode 100644
index 000000000..aad833d9c
--- /dev/null
+++ b/src/number-keyboard/CollapseIcon.tsx
@@ -0,0 +1,12 @@
+export default {
+ render() {
+ return (
+
+ );
+ },
+};
diff --git a/src/number-keyboard/Key.js b/src/number-keyboard/Key.js
index 42872ecd4..571ee0485 100644
--- a/src/number-keyboard/Key.js
+++ b/src/number-keyboard/Key.js
@@ -1,6 +1,7 @@
import { createNamespace } from '../utils';
import { TouchMixin } from '../mixins/touch';
import DeleteIcon from './DeleteIcon';
+import CollapseIcon from './CollapseIcon';
const [createComponent, bem] = createNamespace('key');
@@ -50,6 +51,7 @@ export default createComponent({
},
genContent() {
+ const isExtra = this.type === 'extra';
const isDelete = this.type === 'delete';
const text = this.slots('default') || this.text;
@@ -57,6 +59,10 @@ export default createComponent({
return text || ;
}
+ if (isExtra) {
+ return text || ;
+ }
+
return text;
},
},
diff --git a/src/number-keyboard/index.js b/src/number-keyboard/index.js
index 55cbc8bc9..759313499 100644
--- a/src/number-keyboard/index.js
+++ b/src/number-keyboard/index.js
@@ -76,12 +76,11 @@ export default createComponent({
switch (this.theme) {
case 'default':
keys.push(
- { text: this.extraKey, type: 'extra', color: 'gray' },
+ { text: this.extraKey, type: 'extra' },
{ text: 0 },
{
text: this.showDeleteKey ? this.deleteButtonText : '',
type: this.showDeleteKey ? 'delete' : '',
- color: 'gray',
}
);
break;
@@ -113,6 +112,9 @@ export default createComponent({
onPress(text, type) {
if (text === '') {
+ if (type === 'extra') {
+ this.onBlur();
+ }
return;
}
@@ -182,7 +184,6 @@ export default createComponent({
large
text={this.deleteButtonText}
type="delete"
- color="gray"
onPress={this.onPress}
>
{this.slots('delete')}
diff --git a/src/number-keyboard/index.less b/src/number-keyboard/index.less
index aff942b18..b3893eb25 100644
--- a/src/number-keyboard/index.less
+++ b/src/number-keyboard/index.less
@@ -86,18 +86,10 @@
font-size: @number-keyboard-delete-font-size;
}
- &--gray {
- background-color: @number-keyboard-key-background;
- }
-
&--active {
background-color: @number-keyboard-key-active-color;
}
- &--gray&--active {
- background-color: @gray-3;
- }
-
&--blue {
color: @number-keyboard-button-text-color;
background-color: @number-keyboard-button-background-color;
@@ -122,4 +114,9 @@
width: 32px;
height: 22px;
}
+
+ &__collapse-icon {
+ width: 30px;
+ height: 24px;
+ }
}
diff --git a/src/number-keyboard/test/__snapshots__/demo.spec.js.snap b/src/number-keyboard/test/__snapshots__/demo.spec.js.snap
index dfb60ac58..97340ad96 100644
--- a/src/number-keyboard/test/__snapshots__/demo.spec.js.snap
+++ b/src/number-keyboard/test/__snapshots__/demo.spec.js.snap
@@ -63,13 +63,15 @@ exports[`renders demo correctly 1`] = `
9
-
@@ -115,7 +117,7 @@ exports[`renders demo correctly 1`] = `