index.tsx 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. import { defineComponent } from "vue";
  2. import styles from "./index.module.less";
  3. import state from "/src/state";
  4. import { popImgs } from "/src/view/evaluating";
  5. import { evaluatingData } from "/src/view/evaluating";
  6. import { Vue3Lottie } from "vue3-lottie";
  7. import loading from "./loading.json";
  8. import animBg from "../audio-list/img/refresh_anim.json";
  9. export default defineComponent({
  10. name: "abnormal-pop",
  11. emits: ["close", "confirm"],
  12. setup(props, { emit }) {
  13. return () => (
  14. <>
  15. {evaluatingData.socketErrorStatus === 0 && (
  16. <div class={styles.fraction}>
  17. <img class={styles.close} src={popImgs.icon_close} onClick={() => emit("close")} />
  18. <div class={styles.content}>
  19. <div class={styles.title}>网络连接失败</div>
  20. <div class={styles.desc}>请确保网络正常后重新连接</div>
  21. </div>
  22. <div>
  23. <img src={popImgs.icon_btn} class={styles.btn} onClick={() => emit("confirm", true)} />
  24. </div>
  25. </div>
  26. )}
  27. {evaluatingData.socketErrorStatus === 1 && (
  28. // <div class={styles.loadColumn}>
  29. // <Vue3Lottie class={styles.loadIcon} animationData={loading} loop={true}></Vue3Lottie>
  30. // <img class={styles.close} src={popImgs.icon_close} onClick={() => emit("close")} />
  31. // <p>正在连接服务器,请稍后…</p>
  32. // </div>
  33. <div class={styles.loadingPop}>
  34. <Vue3Lottie animationData={animBg} class={styles.loadingIcon}></Vue3Lottie>
  35. <div class={styles.loadingTip}>正在连接中,请稍等…</div>
  36. <div class={styles.loadingClose} onClick={() => emit("close")}>
  37. 取消连接
  38. </div>
  39. </div>
  40. )}
  41. {evaluatingData.socketErrorStatus === 2 && (
  42. <div class={styles.loadColumn}>
  43. <img class={styles.successIcon} src={popImgs.icon_success} />
  44. <p>网络连接成功</p>
  45. </div>
  46. )}
  47. </>
  48. );
  49. },
  50. });