index.wxml 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. <wxs src="../wxs/utils.wxs" module="utils" />
  2. <van-cell
  3. icon="{{ leftIcon }}"
  4. title="{{ label }}"
  5. center="{{ center }}"
  6. border="{{ border }}"
  7. is-link="{{ isLink }}"
  8. required="{{ required }}"
  9. custom-style="{{ customStyle }}"
  10. title-width="{{ titleWidth }}"
  11. custom-class="van-field"
  12. >
  13. <slot name="left-icon" slot="icon" />
  14. <slot name="label" slot="title" />
  15. <view class="van-field__body {{ type === 'textarea' ? 'van-field__body--textarea' : '' }}">
  16. <textarea
  17. wx:if="{{ type === 'textarea' }}"
  18. class="input-class {{ utils.bem('field__input', [inputAlign, { disabled, error }]) }}"
  19. fixed="{{ fixed }}"
  20. focus="{{ focus }}"
  21. value="{{ value }}"
  22. disabled="{{ disabled || readonly }}"
  23. maxlength="{{ maxlength }}"
  24. auto-height="{{ autosize }}"
  25. placeholder="{{ placeholder }}"
  26. placeholder-style="{{ placeholderStyle }}"
  27. placeholder-class="{{ error ? 'van-field__input--error' : 'van-field__placeholder' }}"
  28. cursor-spacing="{{ cursorSpacing }}"
  29. adjust-position="{{ adjustPosition }}"
  30. show-confirm-bar="{{ showConfirmBar }}"
  31. bindinput="onInput"
  32. bind:blur="onBlur"
  33. bind:focus="onFocus"
  34. bind:confirm="onConfirm"
  35. />
  36. <input
  37. wx:else
  38. class="input-class {{ utils.bem('field__input', [inputAlign, { disabled, error }]) }}"
  39. type="{{ type }}"
  40. focus="{{ focus }}"
  41. value="{{ value }}"
  42. disabled="{{ disabled || readonly }}"
  43. maxlength="{{ maxlength }}"
  44. placeholder="{{ placeholder }}"
  45. placeholder-style="{{ placeholderStyle }}"
  46. placeholder-class="{{ error ? 'van-field__input--error' : 'van-field__placeholder' }}"
  47. confirm-type="{{ confirmType }}"
  48. confirm-hold="{{ confirmHold }}"
  49. cursor-spacing="{{ cursorSpacing }}"
  50. adjust-position="{{ adjustPosition }}"
  51. bindinput="onInput"
  52. bind:blur="onBlur"
  53. bind:focus="onFocus"
  54. bind:confirm="onConfirm"
  55. />
  56. <van-icon
  57. wx:if="{{ showClear }}"
  58. size="16px"
  59. name="clear"
  60. class="van-field__clear-root"
  61. custom-class="van-field__clear"
  62. bind:touchstart="onClear"
  63. />
  64. <view class="van-field__icon-container" wx:if="{{ icon || useIconSlot }}" bind:tap="onClickIcon">
  65. <van-icon
  66. wx:if="{{ icon }}"
  67. size="16px"
  68. name="{{ icon }}"
  69. custom-class="van-field__icon {{ iconClass }}"
  70. />
  71. <slot wx:else name="icon" />
  72. </view>
  73. <view wx:if="{{ useButtonSlot }}" class="van-field__button">
  74. <slot name="button" />
  75. </view>
  76. </view>
  77. <view wx:if="{{ errorMessage }}" class="van-field__error-message">
  78. {{ errorMessage }}
  79. </view>
  80. </van-cell>