beiPage.vue 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <template>
  2. <view>
  3. <!-- 单词区 -->
  4. <selectWordsVue :active-words="activeWords" :activeWord="activeWord"></selectWordsVue>
  5. <!-- 显示区 -->
  6. <selectTypesVue activeSelect="2"></selectTypesVue>
  7. <!-- 输入区 -->
  8. <view></view>
  9. <!-- 解释区 -->
  10. <view>
  11. {{activeWord.jianyi.join(';')}}
  12. </view>
  13. <!-- 音标区 -->
  14. <view></view>
  15. <!-- 浮层输入区 -->
  16. <view></view>
  17. </view>
  18. </template>
  19. <script setup>
  20. import selectWordsVue from './selectWords.vue';
  21. import selectTypesVue from './selectTypes.vue';
  22. import {
  23. reactive,
  24. computed
  25. } from 'vue';
  26. import {
  27. getUserIdentity,
  28. } from "@/utils/common.js"
  29. const userCode = getUserIdentity();
  30. const props = defineProps({
  31. activeWord: { // 单词数据
  32. type: Object,
  33. },
  34. activeWords: {
  35. type: Array
  36. },
  37. })
  38. const data = reactive({
  39. answer: '',
  40. result: false, // 正确性
  41. })
  42. // 选择单词
  43. function handleSelect(word) {
  44. data.answer+=word;
  45. }
  46. function checkIsRight() {
  47. if (data.answer == props.activeWord.value) {
  48. data.result = true;
  49. noticeBackDb()
  50. } else {
  51. data.result = false;
  52. }
  53. }
  54. function noticeBackDb() {
  55. // 通知后台已学完当前单词
  56. if (userCode == 'Visitor') {
  57. // 游客不更新后台
  58. return;
  59. }
  60. }
  61. function handleReset() {
  62. data.answer = '';
  63. }
  64. </script>
  65. <style>
  66. </style>