InputItem 文本输入

用于接受单行文本。

规则

  • 支持通过键盘或者剪切板输入文本。

  • 通过光标可以在水平方向进行移动。

  • 对特定格式的文本进行处理,eg:隐藏密码。

代码演示

示例集合

受控组件建议使用(rc-form 文档)

  1. import { List, InputItem } from 'antd-mobile';
  2. import { createForm } from 'rc-form';
  3. let BasicInputExample = React.createClass({
  4. render() {
  5. const { getFieldProps } = this.props.form;
  6. return (<List>
  7. <InputItem
  8. placeholder="请输入"
  9. data-seed="logId"
  10. >标题</InputItem>
  11. <InputItem
  12. {...getFieldProps('control')}
  13. placeholder="请输入(受控)"
  14. >标题</InputItem>
  15. <InputItem
  16. {...getFieldProps('inputclear')}
  17. clear
  18. placeholder="输入会显示清除按钮"
  19. >标题</InputItem>
  20. <InputItem
  21. {...getFieldProps('input3')}
  22. placeholder="无 label"
  23. />
  24. <InputItem
  25. {...getFieldProps('inputtitle2')}
  26. placeholder="标题可自定义"
  27. >
  28. <div style={{ backgroundImage: 'url(https://os.alipayobjects.com/rmsportal/zumwvwrngNMGSWe.png)', backgroundSize: 'cover', height: '0.44rem', width: '0.44rem' }} />
  29. </InputItem>
  30. <InputItem
  31. {...getFieldProps('label8')}
  32. placeholder="限制标题显示的长度"
  33. labelNumber={3}
  34. >标题过长</InputItem>
  35. <InputItem
  36. {...getFieldProps('preice')}
  37. placeholder="0.00"
  38. extra="元"
  39. >价格</InputItem>
  40. <InputItem
  41. {...getFieldProps('upload')}
  42. extra={<img src="https://os.alipayobjects.com/rmsportal/mOoPurdIfmcuqtr.png" />}
  43. >上传照片</InputItem>
  44. <InputItem
  45. {...getFieldProps('bankCard', {
  46. initialValue: '8888 8888 8888 8888',
  47. })}
  48. type="bankCard"
  49. >银行卡</InputItem>
  50. <InputItem
  51. {...getFieldProps('phone')}
  52. type="phone"
  53. placeholder="186 1234 1234"
  54. >手机号码</InputItem>
  55. <InputItem
  56. {...getFieldProps('password')}
  57. type="password"
  58. placeholder="****"
  59. >密码</InputItem>
  60. <InputItem
  61. {...getFieldProps('number')}
  62. type="number"
  63. placeholder="点击会弹出数字键盘"
  64. >数字键盘</InputItem>
  65. <InputItem
  66. value="不可编辑"
  67. editable={false}
  68. >姓名</InputItem>
  69. <InputItem
  70. value="这个是禁用状态的样式"
  71. disabled
  72. >姓名</InputItem>
  73. </List>);
  74. },
  75. });
  76. BasicInputExample = createForm()(BasicInputExample);
  77. ReactDOM.render(<BasicInputExample />, mountNode);
  1. .demoTitle:before,
  2. .demoTitle:after {
  3. border-bottom: none;
  4. }

InputItem文本输入 - 图1

API ( 适用平台:WEB、React-Native )

成员说明类型默认值
prefixListCls列表 className 前缀Stringam-list
type银行卡bankCard,手机号phone(此时最大长度固定为11,maxLength设置无效),密码password, 数字number(尽量唤起数字键盘)Stringtext
nameinput的nameString
valuevalue值(受控与否参考https://facebook.github.io/react/docs/forms.html)String
defaultValue设置初始默认值String-
placeholderplaceholderString''
editable是否可编辑booltrue
disabled是否禁用boolfalse
clear是否带清除功能(仅editabletrue,disabledfalse,value设置才生效)boolfalse
maxLength最大长度number
onChangechange 事件触发的回调函数(val: string): void-
onBlurblur 事件触发的回调函数(val: string): void-
onFocusfocus 事件触发的回调函数(val: string): void-
error报错样式boolfalse
onErrorClick点击报错 icon 触发的回调函数(e: Object): void
extra右边注释string or node''
onExtraClickextra 点击事件触发的回调函数(e: Object): void
labelNumber定宽枚举值:num * @input-label-width: 34px,可用2-7之间的数字,一般(不能保证全部)能对应显示出相应个数的中文文字(不考虑英文字符)number4
updatePlaceholder (web only)当清除内容时,是否将清除前的内容替换到 placeholder 中boolfalse
prefixListCls (web only)列表 className 前缀Stringam-list
name (web only)input 的 nameString

更多属性请参考 react-native TextInput (http://facebook.github.io/react-native/docs/textinput.html)