debounce-text-input
TypeScript icon, indicating that this package has built-in type declarations

1.1.1 • Public • Published

debounce-text-input

Describe

改写Rax的TextInput的onInput事件,并增加防抖处理

Install

$ npm install debounce-text-input --save

Usage

import DebounceTextInput from 'debounce-text-input';

API

Props

name type default describe
value String '' 文本框的文字内容 (受控)
defaultValue String '' 文本框的文字内容 (非受控)
debounceInterval number 0 onInput事件防抖间隔(若为0则不开启防抖)
rax-textinput所有属性 - - -

Example

import { createElement, useState, Fragment } from 'rax';
import View from 'rax-view';
import Text from 'rax-text';
import DebounceTextInput from 'debounce-text-input';
import { EventObject } from 'rax-textinput/lib/types';

import './index.css';
function SearchInput() {
  const [value, setValue] = useState<string>('');

  const onInput = (text: string) => {
    setValue(text);
    
    // 网络请求
    // ...
  }

  return (
    <Fragment>
      <View className="container">
        <DebounceTextInput className="input"
                           value={value}
                           debounceInterval={600}
                           onInput={(e: EventObject) => onInput(e.value)}/>
        {
          value
          && (
            <Text onClick={() => onInput('')}>
              清空
            </Text>
          )
        }
      </View>
      <Text>
        debounceInterval: 600
      </Text>
      <Text>
        value: {value}
      </Text>
      <Text onClick={() => onInput('felix')}>
        set: felix
      </Text>
    </Fragment>
  );
}

export default SearchInput;

Readme

Keywords

Package Sidebar

Install

npm i debounce-text-input

Weekly Downloads

1

Version

1.1.1

License

none

Unpacked Size

17.9 kB

Total Files

13

Last publish

Collaborators

  • ditang