Commit 9816329804175cf7d075ab5ae0a91dff7b8a8e21
1 parent
8266ec66
wip: bug修复
Showing
3 changed files
with
123 additions
and
136 deletions
src/App.vue
1 | <template> | 1 | <template> |
2 | - <div id="app" ref="app"> | ||
3 | - <transition name="fade" mode="out-in"> | ||
4 | - <router-view></router-view> | ||
5 | - </transition> | ||
6 | - </div> | 2 | + <div id="app" ref="app"> |
3 | + <transition name="fade" mode="out-in"> | ||
4 | + <router-view></router-view> | ||
5 | + </transition> | ||
6 | + </div> | ||
7 | </template> | 7 | </template> |
8 | 8 | ||
9 | <script> | 9 | <script> |
10 | import _ from "lodash"; | 10 | import _ from "lodash"; |
11 | export default { | 11 | export default { |
12 | - name: "app", | ||
13 | - mounted() { | 12 | + name: "app", |
13 | + mounted() {}, | ||
14 | + methods: { | ||
15 | + _reSize() { | ||
16 | + const $app = this.$refs.app; | ||
14 | 17 | ||
15 | - }, | ||
16 | - methods: { | ||
17 | - _reSize() { | 18 | + const standardScale = "100%" / "100%"; |
18 | 19 | ||
19 | - const $app = this.$refs.app; | 20 | + const docHeight = document.body.clientHeight; |
20 | 21 | ||
21 | - const standardScale = "100%" / "100%"; | 22 | + const docWidth = document.body.clientWidth; |
22 | 23 | ||
23 | - const docHeight = document.body.clientHeight; | 24 | + if (docWidth < 1700) { |
25 | + const currentScale = docHeight / docWidth; | ||
24 | 26 | ||
25 | - const docWidth = document.body.clientWidth; | 27 | + let [scale, translate] = [0, 0]; |
28 | + if (currentScale < standardScale) { | ||
29 | + // 以高度计算 | ||
30 | + scale = docHeight / 1080; | ||
26 | 31 | ||
27 | - if (docWidth < 1700) { | 32 | + const shouleWidth = 1920 * scale; |
28 | 33 | ||
29 | - const currentScale = docHeight / docWidth; | 34 | + const offsetWidth = docWidth - shouleWidth; |
30 | 35 | ||
31 | - let [scale, translate] = [0, 0]; | ||
32 | - if (currentScale < standardScale) { | ||
33 | - // 以高度计算 | ||
34 | - scale = docHeight / 1080; | 36 | + translate = |
37 | + offsetWidth > 0 ? `translate(${offsetWidth / 2}px, 0)` : ""; | ||
38 | + } else { | ||
39 | + // 以宽度计算 | ||
40 | + scale = docWidth / 1920; | ||
35 | 41 | ||
36 | - const shouleWidth = 1920 * scale; | 42 | + const shouleHeight = 1080 * scale; |
37 | 43 | ||
38 | - const offsetWidth = docWidth - shouleWidth; | 44 | + const offsetHeight = docHeight - shouleHeight; |
39 | 45 | ||
40 | - translate = | ||
41 | - offsetWidth > 0 ? `translate(${offsetWidth / 2}px, 0)` : ""; | 46 | + translate = |
47 | + offsetHeight > 0 ? `translate(0, ${offsetHeight / 2}px)` : ""; | ||
48 | + } | ||
42 | 49 | ||
43 | - } else { | ||
44 | - // 以宽度计算 | ||
45 | - scale = docWidth / 1920; | ||
46 | - | ||
47 | - const shouleHeight = 1080 * scale; | ||
48 | - | ||
49 | - const offsetHeight = docHeight - shouleHeight; | ||
50 | - | ||
51 | - translate = | ||
52 | - offsetHeight > 0 ? `translate(0, ${offsetHeight / 2}px)` : ""; | ||
53 | - } | ||
54 | - | ||
55 | - if (docHeight <= 600) { | ||
56 | - | ||
57 | - $app.style.cssText = ` | 50 | + if (docHeight <= 600) { |
51 | + $app.style.cssText = ` | ||
58 | transform: scale(${scale}) ${translate}; | 52 | transform: scale(${scale}) ${translate}; |
59 | transform-origin: top left; | 53 | transform-origin: top left; |
60 | min-width: 1920px; | 54 | min-width: 1920px; |
61 | min-height:830px; | 55 | min-height:830px; |
62 | `; | 56 | `; |
63 | - } | ||
64 | - else if (docHeight == 610) { | ||
65 | - $app.style.cssText = ` | 57 | + } else if (docHeight == 610) { |
58 | + $app.style.cssText = ` | ||
66 | transform: scale(${scale}) ${translate}; | 59 | transform: scale(${scale}) ${translate}; |
67 | transform-origin: top left; | 60 | transform-origin: top left; |
68 | min-width: 1920px; | 61 | min-width: 1920px; |
69 | min-height:885px; | 62 | min-height:885px; |
70 | - `; | ||
71 | - } | ||
72 | - else if (docHeight <= 606) { | ||
73 | - $app.style.cssText = ` | 63 | + `; |
64 | + } else if (docHeight <= 606) { | ||
65 | + $app.style.cssText = ` | ||
74 | transform: scale(${scale}) ${translate}; | 66 | transform: scale(${scale}) ${translate}; |
75 | transform-origin: top left; | 67 | transform-origin: top left; |
76 | min-width: 1920px; | 68 | min-width: 1920px; |
77 | min-height:850px; | 69 | min-height:850px; |
78 | `; | 70 | `; |
79 | - } | ||
80 | - else if (docHeight <= 650) { | ||
81 | - | ||
82 | - $app.style.cssText = ` | 71 | + } else if (docHeight <= 650) { |
72 | + $app.style.cssText = ` | ||
83 | transform: scale(${scale}) ${translate}; | 73 | transform: scale(${scale}) ${translate}; |
84 | transform-origin: top left; | 74 | transform-origin: top left; |
85 | min-width: 1920px; | 75 | min-width: 1920px; |
86 | min-height:850px; | 76 | min-height:850px; |
87 | `; | 77 | `; |
88 | - } | ||
89 | - else if (docHeight <= 700) { | ||
90 | - | ||
91 | - $app.style.cssText = ` | 78 | + } else if (docHeight <= 700) { |
79 | + $app.style.cssText = ` | ||
92 | transform: scale(${scale}) ${translate}; | 80 | transform: scale(${scale}) ${translate}; |
93 | transform-origin: top left; | 81 | transform-origin: top left; |
94 | min-width: 1920px; | 82 | min-width: 1920px; |
95 | min-height: 890px; | 83 | min-height: 890px; |
96 | `; | 84 | `; |
97 | - } | ||
98 | - else if (docHeight <= 750) { | ||
99 | - | ||
100 | - $app.style.cssText = ` | 85 | + } else if (docHeight <= 750) { |
86 | + $app.style.cssText = ` | ||
101 | transform: scale(${scale}) ${translate}; | 87 | transform: scale(${scale}) ${translate}; |
102 | transform-origin: top left; | 88 | transform-origin: top left; |
103 | min-width: 1920px; | 89 | min-width: 1920px; |
104 | min-height: 910px; | 90 | min-height: 910px; |
105 | `; | 91 | `; |
106 | - } | ||
107 | - else { | ||
108 | - $app.style.cssText = ` | ||
109 | - transform: scale(${scale}) ${translate}; | ||
110 | - transform-origin: top left; | ||
111 | - min-width: 1920px; | ||
112 | - min-height:1045px; | 92 | + } |
93 | + // else { | ||
94 | + // $app.style.cssText = ` | ||
95 | + // transform: scale(${scale}) ${translate}; | ||
96 | + // transform-origin: top left; | ||
97 | + // min-width: 1920px; | ||
98 | + // min-height:1045px; | ||
99 | + // `; | ||
100 | + // } | ||
101 | + else { | ||
102 | + $app.style.cssText = ` | ||
103 | + min-width: 100vh; | ||
104 | + min-height:100vh; | ||
113 | `; | 105 | `; |
114 | - } | ||
115 | - | ||
116 | - } else { | ||
117 | - $app.style.cssText = ''; | ||
118 | - } | ||
119 | - }, | ||
120 | - }, | ||
121 | - created() { | ||
122 | - let that = this; | ||
123 | - | ||
124 | - this.$nextTick(() => { | ||
125 | - if (document.createEvent) { | ||
126 | - that._reSize(); | ||
127 | - } else if (document.createEventObject) { | ||
128 | - that._reSize(); | ||
129 | - } | ||
130 | - }); | ||
131 | - } | ||
132 | -} | ||
133 | - | 106 | + } |
107 | + } else { | ||
108 | + $app.style.cssText = ""; | ||
109 | + } | ||
110 | + }, | ||
111 | + }, | ||
112 | + created() { | ||
113 | + let that = this; | ||
114 | + | ||
115 | + this.$nextTick(() => { | ||
116 | + if (document.createEvent) { | ||
117 | + that._reSize(); | ||
118 | + } else if (document.createEventObject) { | ||
119 | + that._reSize(); | ||
120 | + } | ||
121 | + }); | ||
122 | + }, | ||
123 | +}; | ||
134 | </script> | 124 | </script> |
135 | 125 | ||
136 | <style lang="scss"> | 126 | <style lang="scss"> |
137 | body { | 127 | body { |
138 | - margin: 0px; | ||
139 | - padding: 0px; | ||
140 | - font-family: Microsoft YaHei, Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB, SimSun, sans-serif; | ||
141 | - -webkit-font-smoothing: antialiased; | 128 | + margin: 0px; |
129 | + padding: 0px; | ||
130 | + font-family: Microsoft YaHei, Helvetica Neue, Helvetica, PingFang SC, | ||
131 | + Hiragino Sans GB, SimSun, sans-serif; | ||
132 | + -webkit-font-smoothing: antialiased; | ||
142 | } | 133 | } |
143 | 134 | ||
144 | #app { | 135 | #app { |
145 | - position: absolute; | ||
146 | - top: 0px; | ||
147 | - bottom: 0px; | ||
148 | - width: 100%; | 136 | + position: absolute; |
137 | + top: 0px; | ||
138 | + bottom: 0px; | ||
139 | + width: 100%; | ||
149 | } | 140 | } |
150 | 141 | ||
151 | a { | 142 | a { |
152 | - color: #56a9ff; | 143 | + color: #56a9ff; |
153 | } | 144 | } |
154 | 145 | ||
155 | .fade-enter-active, | 146 | .fade-enter-active, |
156 | .fade-leave-active { | 147 | .fade-leave-active { |
157 | - transition: all .2s ease; | 148 | + transition: all 0.2s ease; |
158 | } | 149 | } |
159 | 150 | ||
160 | .fade-enter, | 151 | .fade-enter, |
161 | .fade-leave-active { | 152 | .fade-leave-active { |
162 | - opacity: 0; | 153 | + opacity: 0; |
163 | } | 154 | } |
164 | 155 | ||
165 | #nprogress .bar { | 156 | #nprogress .bar { |
166 | - height: 3px !important; | ||
167 | - background: #56a9ff !important; //自定义颜色 | 157 | + height: 3px !important; |
158 | + background: #56a9ff !important; //自定义颜色 | ||
168 | } | 159 | } |
169 | </style> | 160 | </style> |
src/views/basic/askTestQuestion/components/wrongQuestionDialog.vue
@@ -603,24 +603,31 @@ export default { | @@ -603,24 +603,31 @@ export default { | ||
603 | }, | 603 | }, |
604 | processString(input) { | 604 | processString(input) { |
605 | // 正则表达式: | 605 | // 正则表达式: |
606 | - const regexs = [/[0-9]+[.)]/, /(\d+分)/, /^(\d{1,3})/]; | 606 | + // const regexs = [/[0-9]+[.)]/, /(\d+分)/, /^(\d{1,3})/]; |
607 | 607 | ||
608 | - // 使用正则表达式匹配并处理输入字符串 | ||
609 | - for (const regex of regexs) { | ||
610 | - const match = input.match(regex); | ||
611 | - if (match) { | ||
612 | - if (regex === regexs[2]) { | ||
613 | - // 如果匹配第三条规则,使用substring截取返回结果的长度加1 | ||
614 | - const matchLength = match[0].length; | ||
615 | - return input.substring(matchLength + 1).trim(); | ||
616 | - } else { | ||
617 | - // 如果匹配第一条或第二条规则,替换匹配的部分 | ||
618 | - input = input.replace(regex, ""); | ||
619 | - } | ||
620 | - } | 608 | + // // 使用正则表达式匹配并处理输入字符串 |
609 | + // for (const regex of regexs) { | ||
610 | + // const match = input.match(regex); | ||
611 | + // if (match) { | ||
612 | + // if (regex === regexs[2]) { | ||
613 | + // // 如果匹配第三条规则,使用substring截取返回结果的长度加1 | ||
614 | + // const matchLength = match[0].length; | ||
615 | + // return input.substring(matchLength + 1).trim(); | ||
616 | + // } else { | ||
617 | + // // 如果匹配第一条或第二条规则,替换匹配的部分 | ||
618 | + // input = input.replace(regex, ""); | ||
619 | + // } | ||
620 | + // } | ||
621 | + // } | ||
622 | + const match = input.match(/^(\d{1,3})/); | ||
623 | + if (match) { | ||
624 | + const matchLength = match[0].length; | ||
625 | + input = input.substring(matchLength + 1).trim(); | ||
621 | } | 626 | } |
622 | - | ||
623 | - return input; | 627 | + // 使用正则表达式匹配并处理输入字符串 |
628 | + input = input.replace(/[0-9]+[.)]/, ""); | ||
629 | + input = input.replace(/(\d+(\.\d+)?分)/g, ""); | ||
630 | + return input.trim(); | ||
624 | }, | 631 | }, |
625 | 632 | ||
626 | // 接受两个参数,返回需要删除的数据以及需要添加的数据 | 633 | // 接受两个参数,返回需要删除的数据以及需要添加的数据 |
src/views/basic/askTestQuestion/wrongQuestion.vue
@@ -55,7 +55,7 @@ | @@ -55,7 +55,7 @@ | ||
55 | </div> | 55 | </div> |
56 | </el-col> | 56 | </el-col> |
57 | <el-col class="col-margin" :span="12"> | 57 | <el-col class="col-margin" :span="12"> |
58 | - <span style="font-weight: 600">时间:</span> | 58 | + <span style="font-weight: 600; white-space: nowrap">时间:</span> |
59 | <el-date-picker | 59 | <el-date-picker |
60 | :clearable="false" | 60 | :clearable="false" |
61 | value-format="yyyy-MM-dd" | 61 | value-format="yyyy-MM-dd" |
@@ -100,7 +100,7 @@ | @@ -100,7 +100,7 @@ | ||
100 | % | 100 | % |
101 | </div> | 101 | </div> |
102 | </el-col> | 102 | </el-col> |
103 | - <el-col class="col-margin" :span="6" | 103 | + <el-col class="col-margin" :span="8" |
104 | ><span | 104 | ><span |
105 | style="font-weight: 600; width: fit-content; white-space: nowrap" | 105 | style="font-weight: 600; width: fit-content; white-space: nowrap" |
106 | >题型:</span | 106 | >题型:</span |
@@ -115,12 +115,11 @@ | @@ -115,12 +115,11 @@ | ||
115 | {{ item.label }} | 115 | {{ item.label }} |
116 | </div></el-col | 116 | </div></el-col |
117 | > | 117 | > |
118 | - <el-col class="col-margin" style="margin-left: 10px" :span="2" | 118 | + <el-col class="col-margin" :span="2" |
119 | ><el-button | 119 | ><el-button |
120 | @click="handleSearch" | 120 | @click="handleSearch" |
121 | style="background: #6b73f5" | 121 | style="background: #6b73f5" |
122 | type="primary" | 122 | type="primary" |
123 | - y | ||
124 | >筛选错题</el-button | 123 | >筛选错题</el-button |
125 | ></el-col | 124 | ></el-col |
126 | > | 125 | > |
@@ -622,25 +621,15 @@ export default { | @@ -622,25 +621,15 @@ export default { | ||
622 | this.getClassList(); | 621 | this.getClassList(); |
623 | }, | 622 | }, |
624 | processString(input) { | 623 | processString(input) { |
625 | - // 正则表达式: | ||
626 | - const regexs = [/[0-9]+[.)]/, /(\d+分)/, /^(\d{1,3})/]; | ||
627 | - | ||
628 | - // 使用正则表达式匹配并处理输入字符串 | ||
629 | - for (const regex of regexs) { | ||
630 | - const match = input.match(regex); | ||
631 | - if (match) { | ||
632 | - if (regex === regexs[2]) { | ||
633 | - // 如果匹配第三条规则,使用substring截取返回结果的长度加1 | ||
634 | - const matchLength = match[0].length; | ||
635 | - return input.substring(matchLength + 1).trim(); | ||
636 | - } else { | ||
637 | - // 如果匹配第一条或第二条规则,替换匹配的部分 | ||
638 | - input = input.replace(regex, ""); | ||
639 | - } | ||
640 | - } | 624 | + const match = input.match(/^(\d{1,3})/); |
625 | + if (match) { | ||
626 | + const matchLength = match[0].length; | ||
627 | + input = input.substring(matchLength + 1).trim(); | ||
641 | } | 628 | } |
642 | - | ||
643 | - return input; | 629 | + // 使用正则表达式匹配并处理输入字符串 |
630 | + input = input.replace(/[0-9]+[.)]/, ""); | ||
631 | + input = input.replace(/(\d+(\.\d+)?分)/g, ""); | ||
632 | + return input.trim(); | ||
644 | }, | 633 | }, |
645 | 634 | ||
646 | // 获取ref | 635 | // 获取ref |