diff --git a/src/packages/input/input.taro.tsx b/src/packages/input/input.taro.tsx index 6e09c998cc..32e8a4e518 100644 --- a/src/packages/input/input.taro.tsx +++ b/src/packages/input/input.taro.tsx @@ -39,6 +39,7 @@ export const Input = forwardRef((props: Partial, ref) => { const rtl = useRtl() const { locale } = useConfig() const { + focus, type, name, placeholder, @@ -183,7 +184,7 @@ export const Input = forwardRef((props: Partial, ref) => { placeholderClass={`${classPrefix}-placeholder`} disabled={disabled || readOnly} value={value} - focus={autoFocus} + focus={autoFocus || focus} confirmType={confirmType} onBlur={handleBlur} onFocus={handleFocus} diff --git a/src/types/spec/input/taro.ts b/src/types/spec/input/taro.ts index 194681447b..882eb8c7d2 100644 --- a/src/types/spec/input/taro.ts +++ b/src/types/spec/input/taro.ts @@ -9,11 +9,13 @@ type OmittedInput = Omit< 'type' | 'ref' | 'onBlur' | 'onFocus' | 'maxlength' | 'password' > -export interface TaroInputProps - extends Omit< - BaseInput, - 'onClick' | 'onFocus' - > { +type TaroInput = Omit< + BaseInput, + 'onClick' | 'onFocus' +> & + OmittedInput + +export interface TaroInputProps extends TaroInput { onClick?: (e: ITouchEvent) => void onFocus?: (value: string, height?: number) => void }