field 输入框 
用户可以在文本框内输入或编辑文字。
Props参数 
| 名称 | 类型 | 是否必传 | 默认值 | 描述 | 
|---|---|---|---|---|
| value | string | number | ✅ | - | 值 | 
| type | TFieldType | 否 | - | 输入框类型 | 
| placeholder | string | 否 | - | 占位提示符 | 
| fieldProps | InputProps | 否 | - | 原生inputProps | 
| allowClear | boolean | 否 | - | 是否运行清空 | 
示例 
tsx
import { memo, useState } from 'react'
import { View } from '@tarojs/components'
import MMField from '../../components/field'
import MMPageContainer from '../_components/page-container'
import PageDemoBlock from '../_components/page-demo-block'
const Component = () => {
  const [checked, setChecked] = useState(false)
  const [select, setSelect] = useState('')
  const [textare, settextare] = useState('')
  return (
    <MMPageContainer title="输入框">
      <NormalField />
      <PageDemoBlock title="设置">
        <View>右侧值区域对齐方式</View>
        <View className="spacing" />
        <MMField label="value 左对齐" valueAlign="left" value={textare} onChange={settextare} />
        <MMField label="value 居中" valueAlign="center" value={textare} onChange={settextare} />
        <MMField label="value 右对齐" value={textare} onChange={settextare} />
      </PageDemoBlock>
      <PageDemoBlock title="高级组件">
        <View>Field内置了许多高级组件</View>
        <View className="spacing" />
        <MMField.Switch label="切换器" name="addArr" checked={checked} onChange={setChecked} />
        <MMField.Select
          label="选择框"
          name="Select"
          value={select}
          options={[
            { label: '选项1', value: '1' },
            { label: '选项2', value: '2' }
          ]}
          onChange={setSelect}
        />
        <MMField.TextArea label="文本框" name="TextArea" value={textare} onChange={settextare} />
      </PageDemoBlock>
      <CityField />
    </MMPageContainer>
  )
}
const FieldPage = memo(Component)
export default FieldPage
function NormalField() {
  const [text, setText] = useState('')
  const [amount, setAmount] = useState('')
  return (
    <PageDemoBlock title="使用">
      <View>以下是基础示例</View>
      <View className="spacing" />
      <MMField label="普通输入框" name="normalField" placeholder="请输入内容" value={text} onChange={setText} />
      <MMField label="纯数字" name="number" value={amount} type="digit" onChange={setAmount} />
    </PageDemoBlock>
  )
}
/**
 * 城市选择
 *
 * @return {*}
 */
function CityField() {
  const [addressInfo, setAddressInfo] = useState({
    mobile: '',
    name: '',
    defaulted: false,
    address: '',
    coords: '',
    tag: undefined,
    addArr: []
  })
  const updateInputValue = (data) => setAddressInfo((pre) => ({ ...pre, ...data }))
  return (
    <PageDemoBlock title="城市选择">
      <View>演示了如何使用 rules规则校验</View>
      <View className="spacing" />
      <MMField.CityPicker label="城市选择" name="addArr" value={addressInfo.addArr} onChange={(addArr) => updateInputValue({ addArr })} />
      <MMField
        label="详细地址"
        labelStyle={{ width: 70 }}
        name="address"
        required={false}
        rules={[
          {
            required: true,
            validate(_r, value) {
              if (value.length < 4) {
                return Promise.reject(new Error('请输入正确的收货地址'))
              }
              return Promise.resolve(true)
            }
          }
        ]}
        value={addressInfo.address}
        placeholder="详细地址,例如:1号楼6层601"
        onChange={(val) => {
          updateInputValue({ address: val })
        }}
      />
    </PageDemoBlock>
  )
}