小程序农机手端

index.jsx 3.0KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. import Taro from "@tarojs/taro"
  2. import { View, Input } from "@tarojs/components"
  3. import withLayout from '@/layouts'
  4. import CustomNav from "@/components/CustomNav"
  5. import MyButton from "@/components/MyButton"
  6. import './style.less'
  7. import { useState } from "react"
  8. export default withLayout((props) => {
  9. const [name, setName] = useState()
  10. const [bankCode, setBankCode] = useState()
  11. const [bankAddress, setBankAddress] = useState()
  12. const [phone, setPhone] = useState()
  13. const rulePhone = (val) => {
  14. if (!/^1[0-9]{10}$/.test(val)) {
  15. Taro.showToast({
  16. title: '请输入正确的11位手机号',
  17. icon: 'none',
  18. duration: 2000
  19. })
  20. return false
  21. } else return true
  22. }
  23. const ruleCard = (val) => {
  24. if (!/[0-9]{19}$/.test(val)) {
  25. Taro.showToast({
  26. title: '请输入正确的19位银行卡号',
  27. icon: 'none',
  28. duration: 2000
  29. })
  30. return false
  31. } else return true
  32. }
  33. const onClick = () => {
  34. if (name) {
  35. if (bankAddress) {
  36. if (ruleCard(bankCode) && rulePhone(phone)) {
  37. Taro.showToast({
  38. title: '添加成功',
  39. icon: 'none',
  40. duration: 2000
  41. })
  42. Taro.navigateBack({ delta: 1 })
  43. }
  44. } else {
  45. Taro.showToast({
  46. title: '请输入开户行',
  47. icon: 'none',
  48. })
  49. }
  50. } else {
  51. Taro.showToast({
  52. title: '请输入持卡人姓名',
  53. icon: 'none',
  54. })
  55. }
  56. }
  57. return (
  58. <View className='page-index'>
  59. <View className='index-navbar'>
  60. <CustomNav title='我的银行卡' />
  61. </View>
  62. <View className='index-container addBankCard'>
  63. <View className='title'>请绑定持卡人本人的银行卡</View>
  64. <View className='addCardCell'>
  65. <View className='cellLeft'>
  66. <View className='label'>持卡人姓名</View>:</View>
  67. <Input type='text' value={name} onBlur={(e) => { setName(e.detail.value) }} placeholder='请输入真实姓名' />
  68. </View>
  69. <View className='addCardCell'>
  70. <View className='cellLeft'>
  71. <View className='label'>卡号</View>:
  72. </View>
  73. <Input type='number' maxlength='19' value={bankCode} onBlur={(e) => { setBankCode(e.detail.value) }} placeholder='请输入有效卡号' />
  74. </View>
  75. <View className='addCardCell'>
  76. <View className='cellLeft'>
  77. <View className='label'>开户行</View>:
  78. </View>
  79. <Input type='text' value={bankAddress} onBlur={(e) => { setBankAddress(e.detail.value) }} />
  80. </View>
  81. <View className='addCardCell'>
  82. <View className='cellLeft'>
  83. <View className='label'>预留手机号</View>:
  84. </View>
  85. <Input type='number' maxlength='11' value={phone} onBlur={(e) => { setPhone(e.detail.value) }} placeholder='请输入银行卡预留手机号' />
  86. </View>
  87. <View className='bottomBtn'>
  88. <MyButton value='提现' onClick={onClick} />
  89. </View>
  90. </View>
  91. </View>
  92. )
  93. })