DialogFeedback.vue 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. <template>
  2. <a-modal v-model:visible="showFeedback" @beforeOk="handleOk" @beforeCancel="handleCancel" okText="提交">
  3. <template #title> 进一步反馈 </template>
  4. <p class="feedback-title">理解问题有误</p>
  5. <a-checkbox-group v-model="feedbackValue1" class="feedback-content">
  6. <a-grid :cols="2" :colGap="10" :rowGap="8">
  7. <a-grid-item>
  8. <a-checkbox value="1">没能理解指令</a-checkbox>
  9. </a-grid-item>
  10. <a-grid-item>
  11. <a-checkbox value="2">未发现问题中的错误</a-checkbox>
  12. </a-grid-item>
  13. <a-grid-item>
  14. <a-checkbox value="3">无法理解上下文</a-checkbox>
  15. </a-grid-item>
  16. <a-grid-item>
  17. <a-checkbox value="4">答非所问</a-checkbox>
  18. </a-grid-item>
  19. </a-grid>
  20. </a-checkbox-group>
  21. <p class="feedback-title">回答不佳</p>
  22. <a-checkbox-group v-model="feedbackValue2" class="feedback-content">
  23. <a-grid :cols="2" :colGap="10" :rowGap="8">
  24. <a-grid-item>
  25. <a-checkbox value="1">有事实性错误</a-checkbox>
  26. </a-grid-item>
  27. <a-grid-item>
  28. <a-checkbox value="2">回答重复</a-checkbox>
  29. </a-grid-item>
  30. <a-grid-item>
  31. <a-checkbox value="3">格式错误</a-checkbox>
  32. </a-grid-item>
  33. <a-grid-item>
  34. <a-checkbox value="4">对我没帮助</a-checkbox>
  35. </a-grid-item>
  36. </a-grid>
  37. </a-checkbox-group>
  38. <p class="feedback-title">有害信息</p>
  39. <a-checkbox-group v-model="feedbackValue3" class="feedback-content">
  40. <a-grid :cols="2" :colGap="10" :rowGap="8">
  41. <a-grid-item>
  42. <a-checkbox value="1">敏感/有害回复</a-checkbox>
  43. </a-grid-item>
  44. <a-grid-item>
  45. <a-checkbox value="2">存在价值观问题</a-checkbox>
  46. </a-grid-item>
  47. </a-grid>
  48. </a-checkbox-group>
  49. <p class="feedback-title">你认为更理想的答复是什么?</p>
  50. <a-textarea
  51. v-model="feedbackValue4"
  52. :style="{
  53. width: '100%',
  54. height: '100px',
  55. border: '1px solid rgba(187, 187, 187, 1)',
  56. background: 'rgba(0,0,0,0)'
  57. }"
  58. auto-size
  59. placeholder="请输入"
  60. allow-clear
  61. />
  62. </a-modal>
  63. </template>
  64. <script>
  65. import { defineComponent, ref } from "vue";
  66. export default defineComponent({
  67. components: {},
  68. props: ["showFeedback"],
  69. setup(props, { emit }) {
  70. const feedbackValue1 = ref([]);
  71. const feedbackValue2 = ref([]);
  72. const feedbackValue3 = ref([]);
  73. const feedbackValue4 = ref("");
  74. const handleOk = () => {
  75. emit("handle-ok");
  76. return false;
  77. };
  78. const handleCancel = () => {
  79. emit("handle-cancel");
  80. return false;
  81. };
  82. return {
  83. feedbackValue1,
  84. feedbackValue2,
  85. feedbackValue3,
  86. feedbackValue4,
  87. handleOk,
  88. handleCancel
  89. };
  90. }
  91. });
  92. </script>
  93. <style scoped>
  94. .feedback-title {
  95. color: rgba(102, 102, 102, 1);
  96. font-size: 12px;
  97. margin: 0 0 8px 4px;
  98. }
  99. .feedback-content {
  100. margin-bottom: 16px;
  101. }
  102. </style>