Input

概述[文本框]

<Input /> 是文本输入组件,可以通过设置属性实现 Textatea

示例代码

import cooApp, { basicWidgets } from 'coolink'

const { Input, Container } = basicWidgets

export default class InputBox extends cooApp.Widget {
  render () {
    return {
      <Container>
      	<Input
      		value="init value"
      		placeholder="please input something..."
      	/>
      </Container>
    }
  }
}

组件属性

属性名类型说明默认值
valuestringInput 的值(初始值),修改请使用 setValue() 方法(见下方)
disabledboolean是否禁用false
autofocusboolean是否自动聚焦false
maxLinesnumber最大输入行数1
maxLengthnumber最大输入字符数
textAlignstring

- 'left'
- 'right'
- 'center'
文本对齐方式'left'
textStyleTextStyle文本样式,TextStyle 的属性见下方表格
placeholderstring占位符文字,TextStyle 的属性见下方表格
placeholderStyleTextStyle占位符文字样式
cursorColornumber文本/富文本色值
keyboardTypestring

- 'text' 文本键盘
- 'multiline' 多行输入键盘
- 'number' 数字键盘
- 'decimalNumber' 小数点数字键盘
- 'phone' 拨号键盘
- 'datetime' 日期键盘
- 'emailAddress' 邮箱键盘
- 'url' url 键盘
键盘类型'text'
onChangeFunction值改变回调函数,具有 1 个参数

参数具有 value 属性,为当前输入框的值
需要注意的是,当值改变后,页面上始终会显示最新的值,因此不需要再次调用 setState()。如需修改输入框的值,使用下方组件方法会更加高效
onFocusFunction聚焦回调函数,参数同 onChange
onBlurFunction失焦回调函数,参数同 onChange

组件方法

/**
	* 设置输入框的值必须通过该方法,直接使用 setState() 将不生效,
	* @param {string} value 需要设置的值
	*/
setValue(value: string)

TextStyle

属性名类型说明
sizenumber字号
weightstring

- 'normal'
- 'light'
- 'bold'
- 'bolder'
字重
colornumber字体颜色
shadow{color?: number, offsetX?: number, offsetY?: number, blur?: number, spread?: number}文本阴影
letterSpacingnumber字符间距
wordSpacingnumber单词间距

样例 1

export default class HomePage extends Widget<any, any> {
  state = {
    value: ''
  };
  render() {
    return (
      <Page appBar={<AppBar title="测试输入框 Input" />}>
        <Container>
          <Input
            padding={10}
            backgroundColor={Colors.Pagebg}
            value={this.state.value}
            placeholder="请输入内容"
            returnActionType="done"
            onSubmitted={({ value }) => {
              //
            }}
            onFocus={({ value }) => {
              //
            }}
            onBlur={({ value }) => {
              //
            }}
            onChange={({ value }) => {
              //
              this.setState({ value });
            }}
          />
        </Container>
      </Page>
    );
  }
}

上述例子的效果图:

Last Updated:
Contributors: wangyong-debug
©深圳市酷开网络科技股份有限公司 ICP备案号粤ICP备06098778号