diff --git a/packages/field/README.md b/packages/field/README.md
index 0991f5d0..e9cb4d3c 100644
--- a/packages/field/README.md
+++ b/packages/field/README.md
@@ -173,8 +173,8 @@ Page({
| bind:change | 输入内容时触发 | value: 当前输入值 |
| bind:confirm | 点击完成按钮时触发 | value: 当前输入值 |
| bind:click-icon | 点击尾部图标时触发 | - |
-| bind:focus | 输入框聚焦时触发 | - |
-| bind:blur | 输入框失焦时触发 | - |
+| bind:focus | 输入框聚焦时触发 | event.detail.value: 当前输入值;
event.detail.height: 键盘高度(在基础库 1.9.90 起支持) |
+| bind:blur | 输入框失焦时触发 | event.detail.value: 当前输入值;
event.detail.cursor: 游标位置(如果 `type` 不为 `textarea`,值为 `0`) |
| bind:clear | 点击清空控件时触发 | - |
### Slot
diff --git a/packages/field/index.ts b/packages/field/index.ts
index 89ec719c..5c6f3214 100644
--- a/packages/field/index.ts
+++ b/packages/field/index.ts
@@ -87,17 +87,19 @@ VantComponent({
});
},
- onFocus() {
- this.$emit('focus');
+ onFocus(event: Weapp.Event) {
+ const { value = '', height = 0 } = event.detail || {};
+ this.$emit('focus', { value, height });
this.focused = true;
this.setData({
showClear: this.getShowClear()
});
},
- onBlur() {
+ onBlur(event: Weapp.Event) {
+ const { value = '', cursor = 0 } = event.detail || {};
+ this.$emit('blur', { value, cursor });
this.focused = false;
- this.$emit('blur');
this.setData({
showClear: this.getShowClear()
});