index.jsx 1.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import React, { useState, useEffect } from 'react'
  2. import Taro from '@tarojs/taro'
  3. import { View, Image } from '@tarojs/components'
  4. import Disclaimer from '@/components/Disclaimer'
  5. import '@/assets/css/iconfont.css'
  6. import useAuth from '../useAuth'
  7. import './index.scss'
  8. export default (props) => {
  9. const {
  10. consultant,
  11. router,
  12. page,
  13. } = props
  14. const [loading, setLoading] = useState(false)
  15. const { updatePhoneNumber } = useAuth(consultant, router, page)
  16. const handlePhoneNumber = (e) => {
  17. const { errMsg, ...data } = e?.detail || {}
  18. // debugger
  19. if (errMsg === 'getPhoneNumber:ok') {
  20. setLoading(true)
  21. updatePhoneNumber(data).then(() => {
  22. setLoading(false)
  23. }).catch((err) => {
  24. console.error(err)
  25. setLoading(false)
  26. })
  27. } else {
  28. console.error(errMsg);
  29. Taro.showToast({
  30. title: '授权手机失败',
  31. icon: 'none',
  32. duration: 2000
  33. })
  34. }
  35. }
  36. return (
  37. <View className='components NeedLogin flex-v'>
  38. <View className='Logo'>
  39. <Image mode='aspectFit' className='centerLabel' src={require('@/assets/logo.png')} />
  40. </View>
  41. <View className='LoginBtn'>
  42. <button loading={loading} openType='getPhoneNumber' onGetPhoneNumber={handlePhoneNumber}>微信登录</button>
  43. </View>
  44. <View className='flex-item'></View>
  45. <View className='Bottom'>
  46. <Disclaimer />
  47. </View>
  48. </View>
  49. )
  50. }