index.tsx 2.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. import { Button, showToast } from 'vant'
  2. import { defineComponent, onMounted, reactive } from 'vue'
  3. import { useRoute } from 'vue-router'
  4. import styles from './index.module.less'
  5. import wxBg from './images/wx_bg.png'
  6. import { browser } from '@/helpers/utils'
  7. export default defineComponent({
  8. name: 'download',
  9. setup() {
  10. const route = useRoute()
  11. const state = reactive({
  12. wxStatus: false,
  13. type: 'student',
  14. buttonText: '下载管乐团学生端'
  15. })
  16. const onDownload = () => {
  17. if (browser().weixin) {
  18. state.wxStatus = true
  19. return
  20. }
  21. let urlIos = ''
  22. let urlAndroid = ''
  23. if (location.origin.indexOf('online.colexiu.com') > -1) {
  24. if (state.type === 'student') {
  25. urlIos = 'https://itunes.apple.com/cn/app/id1626971695?mt=8'
  26. urlAndroid = 'https://appstore.ks3-cn-beijing.ksyuncs.com/clx-student-domain.apk'
  27. } else if (state.type === 'teacher') {
  28. urlIos = 'https://itunes.apple.com/cn/app/id1626971149?mt=8'
  29. urlAndroid = 'https://appstore.ks3-cn-beijing.ksyuncs.com/clx-teacher-domain.apk'
  30. } else if (state.type === 'manage') {
  31. urlIos = 'https://itunes.apple.com/cn/app/id1626971149?mt=8'
  32. urlAndroid = 'https://appstore.ks3-cn-beijing.ksyuncs.com/clx-teacher-domain.apk'
  33. }
  34. } else {
  35. if (state.type === 'student') {
  36. urlIos = 'https://www.pgyer.com/powy'
  37. urlAndroid = 'https://www.pgyer.com/70e7'
  38. } else if (state.type === 'teacher') {
  39. urlIos = 'https://www.pgyer.com/iO0m'
  40. urlAndroid = 'https://www.pgyer.com/N2U3'
  41. } else if (state.type === 'manage') {
  42. urlIos = 'https://www.pgyer.com/iO0m'
  43. urlAndroid = 'https://www.pgyer.com/N2U3'
  44. }
  45. }
  46. if (browser().ios || /(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
  47. window.location.href = urlIos
  48. } else if (/(Android)/i.test(navigator.userAgent)) {
  49. window.location.href = urlAndroid
  50. } else {
  51. showToast('请用手机或移动设备打开')
  52. }
  53. }
  54. onMounted(() => {
  55. const type: any = route.query.type
  56. state.type = type ? type : 'student'
  57. if (type === 'student') {
  58. state.buttonText = '下载管乐团学生端'
  59. } else if (type === 'teacher') {
  60. state.buttonText = '下载管乐团伴学端'
  61. } else if (type === 'manage') {
  62. state.buttonText = '下载管乐团管理端'
  63. }
  64. document.title = state.buttonText
  65. })
  66. return () => (
  67. <div class={[styles.student]}>
  68. <Button round size="large" color="#FF8057" class={styles.btn} onClick={onDownload}>
  69. {state.buttonText}
  70. </Button>
  71. {state.wxStatus && (
  72. <div
  73. class={styles.wxpopup}
  74. onClick={() => {
  75. state.wxStatus = false
  76. }}
  77. >
  78. <img src={wxBg} alt="" />
  79. </div>
  80. )}
  81. </div>
  82. )
  83. }
  84. })