kaoshixuzhi.vue 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <template>
  2. <uni-popup ref="popupRef" type="dialog">
  3. <uni-popup-dialog mode="input"
  4. title="考试须知"
  5. :duration="2000"
  6. :before-close="true"
  7. @close="handleClose"
  8. @confirm="handleConfirm">
  9. <view>
  10. <view v-if="data.ksName">考试名称:{{data.ksName}}</view>
  11. <view v-if="data.zyName">职业:{{data.zyName}}</view>
  12. <view v-if="data.zyLevelName">等级:{{data.zyLevelName}}</view>
  13. <view v-if="data.ksScore">总分:{{data.ksScore}}</view>
  14. <view v-if="data.okScore">及格分:{{data.okScore}}</view>
  15. <view v-if="data.intro">考试描述:</view>
  16. <rich-text v-if="data.intro" :nodes="data.intro"></rich-text>
  17. </view>
  18. </uni-popup-dialog>
  19. </uni-popup>
  20. </template>
  21. <script setup>
  22. import {
  23. ref,reactive
  24. } from "vue";
  25. const popupRef = ref(null)
  26. const data = reactive({
  27. intro: '',
  28. ksName: '',
  29. ksScore: '',
  30. okScore: '',
  31. zyLevelName: '',
  32. zyName: '',
  33. })
  34. const emits = defineEmits(['confirm', 'cancel'])
  35. function showDialog(options) {
  36. data.intro = options.intro;
  37. data.ksName = options.ksName;
  38. data.ksScore = options.ksScore;
  39. data.okScore = options.okScore;
  40. data.zyName = options.zyName;
  41. data.zyLevelName = options.zyLevelName;
  42. data.ksId = options.ksId;
  43. popupRef.value.open()
  44. }
  45. function handleClose() {
  46. emits('cancel');
  47. popupRef.value.close()
  48. }
  49. function handleConfirm() {
  50. emits('confirm', data.ksId);
  51. popupRef.value.close()
  52. }
  53. defineExpose({
  54. showDialog
  55. })
  56. </script>
  57. <style lang="scss">
  58. </style>