Commit 0550164092a07211012f4299b48e43e6e97ebb25
1 parent
f4a31a2f
Exists in
master
feat:视频播放修改
Showing
6 changed files
with
345 additions
and
462 deletions
Show diff stats
src/App.vue
... | ... | @@ -12,42 +12,20 @@ export default { |
12 | 12 | } |
13 | 13 | }, |
14 | 14 | watch: { |
15 | - $route(to, from) { | |
16 | - console.log('zheliban 》》》 ', to, from) | |
17 | - this.$zwlogPvGlobal({ url: to.meta.pagePath, enterPageTime: new Date() }) | |
18 | - this.$zwlogPvGlobal({ | |
19 | - url: from.meta.pagePath, | |
20 | - leavePageTime: new Date(), | |
21 | - }) | |
22 | - }, | |
15 | + // $route(to, from) { | |
16 | + // console.log('zheliban 》》》 ', to, from) | |
17 | + // this.$zwlogPvGlobal({ url: to.meta.pagePath, enterPageTime: new Date() }) | |
18 | + // this.$zwlogPvGlobal({ | |
19 | + // url: from.meta.pagePath, | |
20 | + // leavePageTime: new Date(), | |
21 | + // }) | |
22 | + // }, | |
23 | 23 | }, |
24 | 24 | mounted() { |
25 | - ZWJSBridge.onReady(() => { | |
26 | - console.log('初始化完成后,执行bridge方法') | |
27 | - }) | |
28 | 25 | const isElder = localStorage.getItem('isElder') |
29 | 26 | if (isElder) { |
30 | 27 | this.isElder = true |
31 | - } else { | |
32 | - ZWJSBridge.getUiStyle({}) | |
33 | - .then((result) => { | |
34 | - console.log(result) | |
35 | - if (result.uiStyle == 'elder') { | |
36 | - this.isElder = true | |
37 | - localStorage.setItem('isElder', 1) | |
38 | - } | |
39 | - }) | |
40 | - //浙里办APP 6.11.0 版本以下版本标准模式兼容 | |
41 | - .catch((error) => { | |
42 | - console.log(error) | |
43 | - }) | |
44 | - } | |
45 | - // 健康地址调用 | |
46 | - this.yxAxios.get(`https://ocp.sxsedu.net/szsh/health/check`).then((res) => { | |
47 | - console.log('健康地址:', JSON.stringify(res.data)) | |
48 | - const bodyElement = document.getElementsByTagName('body')[0] | |
49 | - bodyElement.append(JSON.stringify(res.data)) | |
50 | - }) | |
28 | + } | |
51 | 29 | }, |
52 | 30 | methods: { |
53 | 31 | setElder(e) { | ... | ... |
src/router/index.js
... | ... | @@ -23,7 +23,6 @@ import StudentDetail from '@/views/Home/StudentDetail.vue' //学生信息 |
23 | 23 | import payneed from '@/views/Service/payneed.vue' //购买须知 |
24 | 24 | import protocol from '@/views/Service/protocol.vue' //用户协议 |
25 | 25 | |
26 | - | |
27 | 26 | import schoolFollow from '@/views/Travel/schoolFollow.vue' //已关注学校列表 |
28 | 27 | import schoolAttestation from '@/views/Travel/schoolAttestation.vue' //已认证学校列表 |
29 | 28 | import classAttestation from '@/views/Travel/classAttestation.vue' //已集团权限年级班级列表 |
... | ... | @@ -44,328 +43,337 @@ import studyList from '@/views/dayStudy/studyList.vue' //每日一习主页面 |
44 | 43 | import summerVacation from '@/views/dayStudy/summerVacation.vue' //每日一习主页面 |
45 | 44 | import ans_question from '@/views/answerRank/ans_question.vue' //答题 |
46 | 45 | import switchUser from '@/views/answerRank/switchUser.vue' //切换 |
46 | +import video from '@/views/dayStudy/video.vue' //视频播放 | |
47 | 47 | import store from '../store' |
48 | 48 | |
49 | 49 | Vue.use(VueRouter) |
50 | -const [routerPush, routerReplace] = [VueRouter.prototype.push, VueRouter.prototype.replace]; | |
51 | -VueRouter.prototype.push = function push (to) { | |
52 | - return routerPush.call(this, to).catch(err => err) | |
50 | +const [routerPush, routerReplace] = [VueRouter.prototype.push, VueRouter.prototype.replace] | |
51 | +VueRouter.prototype.push = function push(to) { | |
52 | + return routerPush.call(this, to).catch((err) => err) | |
53 | +} | |
54 | +VueRouter.prototype.replace = function replace(location) { | |
55 | + return routerReplace.call(this, location).catch((error) => error) | |
53 | 56 | } |
54 | -VueRouter.prototype.replace = function replace (location) { | |
55 | - return routerReplace.call(this, location).catch(error => error); | |
56 | -}; | |
57 | -const routes = [{ | |
57 | +const routes = [ | |
58 | + { | |
58 | 59 | path: '/', |
59 | 60 | name: 'ServiceKQ', |
60 | 61 | component: ServiceKQ, |
61 | 62 | meta: { |
62 | - title: '红色网上游' | |
63 | - } | |
64 | -}, { | |
63 | + title: '红色网上游', | |
64 | + }, | |
65 | + }, | |
66 | + { | |
65 | 67 | path: '/home', |
66 | 68 | name: 'Home', |
67 | 69 | component: Home, |
68 | 70 | meta: { |
69 | - title: '红色网上游' | |
70 | - } | |
71 | -}, | |
72 | -{ | |
71 | + title: '红色网上游', | |
72 | + }, | |
73 | + }, | |
74 | + { | |
73 | 75 | path: '/home_user_info', |
74 | 76 | name: 'HomeUserInfo', |
75 | 77 | component: HomeUserInfo, |
76 | 78 | meta: { |
77 | - title: '红色网上游' | |
78 | - } | |
79 | -}, | |
80 | -{ | |
79 | + title: '红色网上游', | |
80 | + }, | |
81 | + }, | |
82 | + { | |
81 | 83 | path: '/abroad_detail', |
82 | 84 | name: 'ServiceAbroadDetail', |
83 | 85 | component: ServiceAbroadDetail, |
84 | 86 | meta: { |
85 | - title: '红色网上游' | |
86 | - } | |
87 | -}, | |
87 | + title: '红色网上游', | |
88 | + }, | |
89 | + }, | |
88 | 90 | |
89 | - | |
90 | -{ | |
91 | + { | |
91 | 92 | path: '/service_orderXST', |
92 | 93 | name: 'ServiceOrderXST', |
93 | 94 | component: ServiceOrderXST, |
94 | 95 | meta: { |
95 | - title: '我的评价' | |
96 | - } | |
97 | -}, | |
98 | -{ | |
96 | + title: '我的评价', | |
97 | + }, | |
98 | + }, | |
99 | + { | |
99 | 100 | path: '/evaluateCourse', |
100 | 101 | name: 'evaluateCourse', |
101 | 102 | component: evaluateCourse, |
102 | 103 | meta: { |
103 | - title: '评价' | |
104 | - } | |
105 | -}, | |
106 | -{ | |
104 | + title: '评价', | |
105 | + }, | |
106 | + }, | |
107 | + { | |
107 | 108 | path: '/evaluateBase', |
108 | 109 | name: 'evaluateBase', |
109 | 110 | component: evaluateBase, |
110 | 111 | meta: { |
111 | - title: '基地评价' | |
112 | - } | |
113 | -}, | |
114 | -{ | |
112 | + title: '基地评价', | |
113 | + }, | |
114 | + }, | |
115 | + { | |
115 | 116 | path: '/evaluateDetail', |
116 | 117 | name: 'evaluateDetail', |
117 | 118 | component: evaluateDetail, |
118 | 119 | meta: { |
119 | - title: '评价详情' | |
120 | - } | |
121 | -}, | |
122 | -{ | |
120 | + title: '评价详情', | |
121 | + }, | |
122 | + }, | |
123 | + { | |
123 | 124 | path: '/service_abroad_evaluate', |
124 | 125 | name: 'ServiceAbroadEvaluate', |
125 | 126 | component: ServiceAbroadEvaluate, |
126 | 127 | meta: { |
127 | - title: '评价' | |
128 | - } | |
129 | -}, | |
130 | -{ | |
128 | + title: '评价', | |
129 | + }, | |
130 | + }, | |
131 | + { | |
131 | 132 | path: '/YanxueCode', |
132 | 133 | name: 'YanxueCode', |
133 | 134 | component: YanxueCode, |
134 | 135 | meta: { |
135 | - title: '研学码' | |
136 | - } | |
137 | -}, | |
138 | -{ | |
136 | + title: '研学码', | |
137 | + }, | |
138 | + }, | |
139 | + { | |
139 | 140 | path: '/YanxueInfo', |
140 | 141 | name: 'YanxueInfo', |
141 | 142 | component: YanxueInfo, |
142 | 143 | meta: { |
143 | - title: '研学码信息' | |
144 | - } | |
145 | -}, | |
146 | -{ | |
144 | + title: '研学码信息', | |
145 | + }, | |
146 | + }, | |
147 | + { | |
147 | 148 | path: '/chooseSchool', |
148 | 149 | name: 'chooseSchool', |
149 | 150 | component: chooseSchool, |
150 | 151 | meta: { |
151 | - title: '选择学校' | |
152 | - } | |
153 | -}, | |
154 | -{ | |
152 | + title: '选择学校', | |
153 | + }, | |
154 | + }, | |
155 | + { | |
155 | 156 | path: '/select_contact', |
156 | 157 | name: 'SelectContact', |
157 | 158 | component: SelectContact, |
158 | 159 | meta: { |
159 | - title: '选择出行人' | |
160 | - } | |
161 | -}, | |
162 | -{ | |
160 | + title: '选择出行人', | |
161 | + }, | |
162 | + }, | |
163 | + { | |
163 | 164 | path: '/edit_contact', |
164 | 165 | name: 'EditContact', |
165 | 166 | component: EditContact, |
166 | 167 | meta: { |
167 | - title: '修改出行人' | |
168 | - } | |
169 | -}, | |
170 | -{ | |
168 | + title: '修改出行人', | |
169 | + }, | |
170 | + }, | |
171 | + { | |
171 | 172 | path: '/MyClassList', |
172 | 173 | name: 'MyClassList', |
173 | 174 | component: MyClassList, |
174 | 175 | meta: { |
175 | - title: '基地签到' | |
176 | - } | |
177 | -}, | |
178 | -{ | |
176 | + title: '基地签到', | |
177 | + }, | |
178 | + }, | |
179 | + { | |
179 | 180 | path: '/StudentDetail', |
180 | 181 | name: 'StudentDetail', |
181 | 182 | component: StudentDetail, |
182 | 183 | meta: { |
183 | - title: '学生信息' | |
184 | - } | |
185 | -}, | |
186 | -{ | |
184 | + title: '学生信息', | |
185 | + }, | |
186 | + }, | |
187 | + { | |
187 | 188 | path: '/payneed', |
188 | 189 | name: 'payneed', |
189 | 190 | component: payneed, |
190 | 191 | meta: { |
191 | - title: '购买须知' | |
192 | - } | |
193 | -}, | |
194 | -{ | |
192 | + title: '购买须知', | |
193 | + }, | |
194 | + }, | |
195 | + { | |
195 | 196 | path: '/protocol', |
196 | 197 | name: 'protocol', |
197 | 198 | component: protocol, |
198 | 199 | meta: { |
199 | - title: '用户协议' | |
200 | - } | |
201 | -}, | |
202 | -{ | |
200 | + title: '用户协议', | |
201 | + }, | |
202 | + }, | |
203 | + { | |
203 | 204 | path: '/schoolFollow', |
204 | 205 | name: 'schoolFollow', |
205 | 206 | component: schoolFollow, |
206 | 207 | meta: { |
207 | - title: '关注学校' | |
208 | - } | |
209 | -}, | |
210 | -{ | |
208 | + title: '关注学校', | |
209 | + }, | |
210 | + }, | |
211 | + { | |
211 | 212 | path: '/schoolAttestation', |
212 | 213 | name: 'schoolAttestation', |
213 | 214 | component: schoolAttestation, |
214 | 215 | meta: { |
215 | - title: '已认证学校' | |
216 | - } | |
217 | -}, | |
218 | -{ | |
216 | + title: '已认证学校', | |
217 | + }, | |
218 | + }, | |
219 | + { | |
219 | 220 | path: '/classAttestation', |
220 | 221 | name: 'classAttestation', |
221 | 222 | component: classAttestation, |
222 | 223 | meta: { |
223 | - title: '集团认领' | |
224 | - } | |
225 | -}, | |
226 | -{ | |
224 | + title: '集团认领', | |
225 | + }, | |
226 | + }, | |
227 | + { | |
227 | 228 | path: '/YanxuePage', |
228 | 229 | name: 'YanxuePage', |
229 | 230 | component: YanxuePage, |
230 | 231 | meta: { |
231 | - title: '每日一习' | |
232 | - } | |
233 | -}, | |
234 | -{ | |
232 | + title: '每日一习', | |
233 | + }, | |
234 | + }, | |
235 | + { | |
235 | 236 | path: '/achievements', |
236 | 237 | name: 'achievements', |
237 | 238 | component: achievements, |
238 | 239 | meta: { |
239 | - title: '研学成果' | |
240 | - } | |
241 | -}, | |
242 | -{ | |
240 | + title: '研学成果', | |
241 | + }, | |
242 | + }, | |
243 | + { | |
243 | 244 | path: '/achievementsOne', |
244 | 245 | name: 'achievementsOne', |
245 | 246 | component: achievementsOne, |
246 | 247 | meta: { |
247 | - title: '研学成果' | |
248 | - } | |
249 | -}, | |
250 | -{ | |
248 | + title: '研学成果', | |
249 | + }, | |
250 | + }, | |
251 | + { | |
251 | 252 | path: '/chooseSchoolOne', |
252 | 253 | name: 'chooseSchoolOne', |
253 | 254 | component: chooseSchoolOne, |
254 | 255 | meta: { |
255 | - title: '选择学校' | |
256 | - } | |
257 | -}, | |
258 | -{ | |
256 | + title: '选择学校', | |
257 | + }, | |
258 | + }, | |
259 | + { | |
259 | 260 | path: '/pageDetails', |
260 | 261 | name: 'pageDetails', |
261 | 262 | component: pageDetails, |
262 | 263 | meta: { |
263 | - title: '研学成果' | |
264 | - } | |
265 | -}, | |
266 | -{ | |
264 | + title: '研学成果', | |
265 | + }, | |
266 | + }, | |
267 | + { | |
267 | 268 | path: '/rank', |
268 | 269 | name: 'rank', |
269 | 270 | component: rank, |
270 | 271 | meta: { |
271 | - title: '排行榜' | |
272 | - } | |
273 | -}, | |
274 | -{ | |
272 | + title: '排行榜', | |
273 | + }, | |
274 | + }, | |
275 | + { | |
275 | 276 | path: '/ans_rank', |
276 | 277 | name: 'ans_rank', |
277 | 278 | component: ans_rank, |
278 | 279 | meta: { |
279 | - title: '排行榜' | |
280 | - } | |
281 | -}, | |
282 | -{ | |
280 | + title: '排行榜', | |
281 | + }, | |
282 | + }, | |
283 | + { | |
283 | 284 | path: '/brush_questions', |
284 | 285 | name: 'brush_questions', |
285 | 286 | component: brush_questions, |
286 | 287 | meta: { |
287 | - title: '刷题记录' | |
288 | - } | |
289 | -}, | |
290 | -{ | |
288 | + title: '刷题记录', | |
289 | + }, | |
290 | + }, | |
291 | + { | |
291 | 292 | path: '/category', |
292 | 293 | name: 'category', |
293 | 294 | component: category, |
294 | 295 | meta: { |
295 | - title: '题库' | |
296 | - } | |
297 | -}, | |
298 | -{ | |
296 | + title: '题库', | |
297 | + }, | |
298 | + }, | |
299 | + { | |
299 | 300 | path: '/stars', |
300 | 301 | name: 'stars', |
301 | 302 | component: stars, |
302 | 303 | meta: { |
303 | - title: '五星少年' | |
304 | - } | |
305 | -}, | |
306 | -{ | |
304 | + title: '五星少年', | |
305 | + }, | |
306 | + }, | |
307 | + { | |
307 | 308 | path: '/dayStudy', |
308 | 309 | name: 'dayStudy', |
309 | 310 | component: dayStudy, |
310 | 311 | meta: { |
311 | - title: '每日一习' | |
312 | - } | |
313 | -}, | |
314 | -{ | |
312 | + title: '每日一习', | |
313 | + }, | |
314 | + }, | |
315 | + { | |
315 | 316 | path: '/studyList', |
316 | 317 | name: 'studyList', |
317 | 318 | component: studyList, |
318 | 319 | meta: { |
319 | - title: '每日一习' | |
320 | - } | |
321 | -}, | |
322 | -{ | |
320 | + title: '每日一习', | |
321 | + }, | |
322 | + }, | |
323 | + { | |
323 | 324 | path: '/summerVacation', |
324 | 325 | name: 'summerVacation', |
325 | 326 | component: summerVacation, |
326 | 327 | meta: { |
327 | - title: '每日一习' | |
328 | - } | |
329 | -}, | |
330 | -{ | |
328 | + title: '每日一习', | |
329 | + }, | |
330 | + }, | |
331 | + { | |
332 | + path: '/video', | |
333 | + name: 'video', | |
334 | + component: video, | |
335 | + meta: { | |
336 | + title: '视频', | |
337 | + }, | |
338 | + }, | |
339 | + { | |
331 | 340 | path: '/ans_question', |
332 | 341 | name: 'ans_question', |
333 | 342 | component: ans_question, |
334 | 343 | meta: { |
335 | - title: '答题' | |
336 | - } | |
337 | -}, | |
338 | -{ | |
344 | + title: '答题', | |
345 | + }, | |
346 | + }, | |
347 | + { | |
339 | 348 | path: '/switchUser', |
340 | 349 | name: 'switchUser', |
341 | 350 | component: switchUser, |
342 | 351 | meta: { |
343 | - title: '切换用户' | |
344 | - } | |
345 | -}, | |
346 | -{ | |
352 | + title: '切换用户', | |
353 | + }, | |
354 | + }, | |
355 | + { | |
347 | 356 | path: '/YanxueDetail', |
348 | 357 | name: 'YanxueDetail', |
349 | 358 | component: YanxueDetail, |
350 | - meta: {} | |
351 | -}, | |
352 | - | |
359 | + meta: {}, | |
360 | + }, | |
353 | 361 | ] |
354 | 362 | const router = new VueRouter({ |
355 | - mode: 'hash', | |
356 | - // base: process.env.BASE_URL+'/center', | |
357 | - base: process.env.BASE_URL, | |
358 | - routes | |
363 | + mode: 'hash', | |
364 | + // base: process.env.BASE_URL+'/center', | |
365 | + base: process.env.BASE_URL, | |
366 | + routes, | |
359 | 367 | }) |
360 | 368 | router.beforeEach((to, from, next) => { |
361 | - /* 路由发生变化修改页面title */ | |
362 | - if (to.meta.title) { | |
363 | - // document.title = to.meta.title | |
364 | - ZWJSBridge.setTitle({ | |
365 | - "title": to.meta.title | |
366 | - }) | |
367 | - } | |
368 | - next() | |
369 | + /* 路由发生变化修改页面title */ | |
370 | + if (to.meta.title) { | |
371 | + // document.title = to.meta.title | |
372 | + ZWJSBridge.setTitle({ | |
373 | + title: to.meta.title, | |
374 | + }) | |
375 | + } | |
376 | + next() | |
369 | 377 | }) |
370 | 378 | |
371 | -export default router | |
372 | 379 | \ No newline at end of file |
380 | +export default router | ... | ... |
src/views/Service/ServiceKQ.vue
... | ... | @@ -13,151 +13,8 @@ export default { |
13 | 13 | } |
14 | 14 | }, |
15 | 15 | mounted() { |
16 | - console.log('xst mounted') | |
17 | - // this.checkAuth() | |
18 | - //二次回退 | |
19 | - const sUserAgent = window.navigator.userAgent.toLowerCase() | |
20 | - const bIsAlipayMini = sUserAgent.indexOf('miniprogram') > -1 && sUserAgent.indexOf('alipay') > -1 | |
21 | - if (bIsAlipayMini) { | |
22 | - console.log('我来自支付宝,popstate') | |
23 | - window.addEventListener('popstate', this.listenerPopstate, true) | |
24 | - } else { | |
25 | - console.log('我来自浙里办,popstate') | |
26 | - window.addEventListener('popstate', this.listenerPopstate, true) | |
27 | - } | |
28 | - }, | |
29 | - //销毁监听 | |
30 | - destroyed() { | |
31 | - console.log('销毁支付宝监听') | |
32 | - window.removeEventListener('popstate', this.listenerPopstate, true) | |
33 | 16 | }, |
34 | 17 | methods: { |
35 | - //支付宝二次回退方法,addEventListener和removeEventListener一定要调用方法,不然无效 | |
36 | - listenerPopstate() { | |
37 | - ZWJSBridge.close() | |
38 | - }, | |
39 | - checkAuth() { | |
40 | - let centerNo = localStorage.getItem('centerNo') | |
41 | - let ticket = this.common.getUrlParam('ticket') //浙里办app访问 | |
42 | - let ticketId = this.common.getUrlParam('ticketId') //浙里办微信小程序访问 | |
43 | - if (centerNo) { | |
44 | - // alert('有中台编号:' + centerNo) | |
45 | - this.centerNo = centerNo | |
46 | - localStorage.setItem('centerNo', centerNo) | |
47 | - this.getUserInfo() | |
48 | - } else if (ticket && ticket.indexOf('debug') == -1) { | |
49 | - // ZWJSBridge.alert({ | |
50 | - // message: '有ticket:' + ticket, | |
51 | - // }) | |
52 | - this.getCenterByTicket(ticket) | |
53 | - } else if (ticketId && ticketId.indexOf('debug') == -1) { | |
54 | - // ZWJSBridge.alert({ | |
55 | - // message: '有ticketId:' + ticketId, | |
56 | - // }) | |
57 | - this.getCenterByTicketId(ticketId) | |
58 | - localStorage.setItem('isWechat', 1) | |
59 | - } else { | |
60 | - const sUserAgent = window.navigator.userAgent.toLowerCase() | |
61 | - const dtdreamweb = sUserAgent.indexOf('dtdreamweb') > -1 | |
62 | - const miniprogram = sUserAgent.indexOf('miniprogram') > -1 && sUserAgent.indexOf('alipay') > -1 | |
63 | - if (dtdreamweb) { | |
64 | - // alert('浙里办') | |
65 | - window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=82a7a71edb794fc285895f9e33290ddc` | |
66 | - } else if (miniprogram) { | |
67 | - // alert('支付宝') | |
68 | - window.location.href = `https://puser.zjzwfw.gov.cn/sso/alipay.do?action=ssoLogin&servicecode=82a7a71edb794fc285895f9e33290ddc` | |
69 | - } else { | |
70 | - alert('非浙里办渠道访问,显示测试用户数据') | |
71 | - console.log('非浙里办渠道访问,显示测试用户数据', userData) | |
72 | - this.centerNo = '2022031508525674030748540013076' | |
73 | - localStorage.setItem('centerNo', '2022031508525674030748540013076') | |
74 | - let userInfo = JSON.stringify(userData) | |
75 | - localStorage.setItem('userInfo', userInfo) | |
76 | - this.getUserInfo() | |
77 | - } | |
78 | - } | |
79 | - }, | |
80 | - // 通过ticket获取centerNo | |
81 | - getCenterByTicket(ticket) { | |
82 | - this.yxAxios.get(`${this.proxyUrl}/api/third/getCenterNo?ticket=${ticket}`).then((res) => { | |
83 | - if (res.data.code == 200) { | |
84 | - console.log('通过ticket获取centerNo成功:', res.data) | |
85 | - this.centerNo = res.data.message | |
86 | - localStorage.setItem('centerNo', res.data.message) | |
87 | - this.getUserInfo() | |
88 | - } else { | |
89 | - console.log('通过ticket获取centerNo失败:', res.data.code) | |
90 | - this.reLoad() | |
91 | - } | |
92 | - }) | |
93 | - }, | |
94 | - // 通过ticketId获取centerNo | |
95 | - getCenterByTicketId(ticketId) { | |
96 | - // alert(ticketId) | |
97 | - this.yxAxios.get(`${this.proxyUrl}/api/third/getCenterNoWx?ticket=${ticketId}`).then((res) => { | |
98 | - if (res.data.code == 200) { | |
99 | - console.log('通过ticketId获取centerNo成功:', res.data) | |
100 | - this.centerNo = res.data.message | |
101 | - localStorage.setItem('centerNo', res.data.message) | |
102 | - this.getUserInfo() | |
103 | - } else { | |
104 | - console.log('通过ticketId获取centerNo失败:', res.data.code) | |
105 | - this.reLoad() | |
106 | - } | |
107 | - }) | |
108 | - }, | |
109 | - reLoad() { | |
110 | - console.log('reload') | |
111 | - const sUserAgent = window.navigator.userAgent.toLowerCase() | |
112 | - const dtdreamweb = sUserAgent.indexOf('dtdreamweb') > -1 | |
113 | - const miniprogram = sUserAgent.indexOf('miniprogram') > -1 && sUserAgent.indexOf('alipay') > -1 | |
114 | - // if (localStorage.getItem('reloadCount') == 2) { | |
115 | - // localStorage.setItem('reloadCount', 1) | |
116 | - // ZWJSBridge.confirm({ | |
117 | - // title: '警告', | |
118 | - // buttonLabels: ['重新载入'], | |
119 | - // message: '用户身份验证失败,请重新加载', | |
120 | - // }).then((res) => { | |
121 | - // if (dtdreamweb) { | |
122 | - // // alert('浙里办') | |
123 | - // window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=82a7a71edb794fc285895f9e33290ddc` | |
124 | - // } else if (miniprogram) { | |
125 | - // // alert('支付宝') | |
126 | - // window.location.href = `https://puser.zjzwfw.gov.cn/sso/alipay.do?action=ssoLogin&servicecode=82a7a71edb794fc285895f9e33290ddc` | |
127 | - // } else { | |
128 | - // // alert('浙里办') | |
129 | - // window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=82a7a71edb794fc285895f9e33290ddc` | |
130 | - // } | |
131 | - // }) | |
132 | - // } else { | |
133 | - // localStorage.setItem('reloadCount', 2) | |
134 | - if (miniprogram) { | |
135 | - // alert('支付宝') | |
136 | - window.location.href = `https://puser.zjzwfw.gov.cn/sso/alipay.do?action=ssoLogin&servicecode=82a7a71edb794fc285895f9e33290ddc` | |
137 | - } else { | |
138 | - // alert('浙里办') | |
139 | - window.location.href = `https://puser.zjzwfw.gov.cn/sso/mobile.do?action=oauth&scope=1&servicecode=82a7a71edb794fc285895f9e33290ddc` | |
140 | - } | |
141 | - // } | |
142 | - }, | |
143 | - // 获取用户信息 | |
144 | - getUserInfo() { | |
145 | - this.centerNo = localStorage.getItem('centerNo') | |
146 | - // alert('getUserInfo:' + this.centerNo) | |
147 | - this.yxAxios.post(`${this.proxyUrl}/user/info/getPortalUserByNumV2?userNum=${localStorage.getItem('centerNo')}`).then((res) => { | |
148 | - console.log('获取用户信息getPortalUserByNum:', res) | |
149 | - if (res.data.code == 200) { | |
150 | - let userInfo = res.data.data.userInfo | |
151 | - localStorage.setItem('userInfo', JSON.stringify(userInfo)) | |
152 | - this.userInfo = userInfo | |
153 | - localStorage.setItem('_user_nick', userInfo.travelerName) | |
154 | - this.$zwlogPvGlobal({ loadTime: new Date() }) | |
155 | - this.$nextTick(() => { | |
156 | - this.$zwlogPvGlobal({ responseTime: new Date() }) | |
157 | - }) | |
158 | - } | |
159 | - }) | |
160 | - }, | |
161 | 18 | }, |
162 | 19 | components: { |
163 | 20 | ServiceBasekq, | ... | ... |
src/views/dayStudy/studyList.vue
1 | 1 | <template> |
2 | - <div class="box"> | |
3 | - <div class="card" v-for="(v, i) in videoList" :key="i" @click="toPath(v)"> | |
4 | - <div class="card_pic"> | |
5 | - <img :src="v.url" /> | |
6 | - </div> | |
7 | - <div class="card_context"> | |
8 | - <div class="title">{{v.title}}</div> | |
9 | - <div class="group_font">{{v.greyTitle}}</div> | |
10 | - </div> | |
11 | - </div> | |
12 | - | |
2 | + <div class="box"> | |
3 | + <div class="card" v-for="(v, i) in videoList" :key="i" @click="toPath(v)"> | |
4 | + <div class="card_pic"> | |
5 | + <img :src="v.url" /> | |
6 | + </div> | |
7 | + <div class="card_context"> | |
8 | + <div class="title">{{ v.title }}</div> | |
9 | + <div class="group_font">{{ v.greyTitle }}</div> | |
10 | + </div> | |
13 | 11 | </div> |
12 | + </div> | |
14 | 13 | </template> |
15 | 14 | |
16 | 15 | <script> |
17 | 16 | import videoList from '@/views/dayStudy/data.json' |
18 | 17 | export default { |
19 | - data() { | |
20 | - return { | |
21 | - }; | |
18 | + data() { | |
19 | + return {} | |
20 | + }, | |
21 | + computed: { | |
22 | + videoList() { | |
23 | + return videoList | |
22 | 24 | }, |
23 | - computed: { | |
24 | - videoList() { | |
25 | - return videoList | |
26 | - } | |
25 | + }, | |
26 | + methods: { | |
27 | + toPath(val) { | |
28 | + console.log(val) | |
29 | + this.$router.push({ | |
30 | + name: 'video', | |
31 | + query: { | |
32 | + url: val.videoUrl, | |
33 | + }, | |
34 | + }) | |
27 | 35 | }, |
28 | - methods: { | |
29 | - toPath(val) { | |
30 | - console.log(val) | |
31 | - window.open(val.videoUrl) | |
32 | - } | |
33 | - } | |
34 | -}; | |
36 | + }, | |
37 | +} | |
35 | 38 | </script> |
36 | 39 | |
37 | 40 | <style lang="scss" scoped> |
38 | 41 | .box { |
39 | - padding-bottom: 30px; | |
40 | - box-sizing: border-box; | |
42 | + padding-bottom: 30px; | |
43 | + box-sizing: border-box; | |
44 | + | |
45 | + .card { | |
46 | + width: 100vw; | |
47 | + height: 535px; | |
48 | + background-color: #fff; | |
49 | + margin-bottom: 30px; | |
50 | + | |
51 | + .card_pic { | |
52 | + height: 400px; | |
53 | + | |
54 | + img { | |
55 | + width: 100%; | |
56 | + height: 100%; | |
57 | + } | |
58 | + } | |
59 | + .card_context { | |
60 | + height: calc(535px - 400px); | |
61 | + padding: 25px 50px 10px; | |
62 | + box-sizing: border-box; | |
63 | + display: flex; | |
64 | + align-content: space-between; | |
65 | + flex-wrap: wrap; | |
41 | 66 | |
42 | - .card { | |
43 | - width: 100vw; | |
44 | - height: 535px; | |
45 | - background-color: #fff; | |
46 | - margin-bottom: 30px; | |
47 | - | |
48 | - .card_pic { | |
49 | - height: 400px; | |
50 | - | |
51 | - img { | |
52 | - width: 100%; | |
53 | - height: 100%; | |
54 | - } | |
55 | - } | |
56 | - .card_context { | |
57 | - height: calc(535px - 400px); | |
58 | - padding: 25px 50px 10px; | |
59 | - box-sizing: border-box; | |
60 | - display: flex; | |
61 | - align-content: space-between; | |
62 | - flex-wrap: wrap; | |
63 | - | |
64 | - .title { | |
65 | - width: 100%; | |
66 | - font-weight: bold; | |
67 | - font-size: 32px; | |
68 | - } | |
69 | - .group_font { | |
70 | - font-size: 28px; | |
71 | - color: #999; | |
72 | - } | |
73 | - } | |
67 | + .title { | |
68 | + width: 100%; | |
69 | + font-weight: bold; | |
70 | + font-size: 32px; | |
71 | + } | |
72 | + .group_font { | |
73 | + font-size: 28px; | |
74 | + color: #999; | |
75 | + } | |
74 | 76 | } |
77 | + } | |
75 | 78 | } |
76 | -</style> | |
77 | 79 | \ No newline at end of file |
80 | +</style> | ... | ... |
src/views/dayStudy/summerVacation.vue
1 | 1 | <template> |
2 | - <div class="box"> | |
3 | - <div class="card" v-for="(v, i) in videoList" :key="i" @click="toPath(v)"> | |
4 | - <div class="card_pic"> | |
5 | - <img :src="v.url" /> | |
6 | - </div> | |
7 | - <div class="card_context"> | |
8 | - <div class="title">{{v.title}}</div> | |
9 | - <div class="group_font">{{v.greyTitle}}</div> | |
10 | - </div> | |
11 | - </div> | |
12 | - | |
2 | + <div class="box"> | |
3 | + <div class="card" v-for="(v, i) in videoList" :key="i" @click="toPath(v)"> | |
4 | + <div class="card_pic"> | |
5 | + <img :src="v.url" /> | |
6 | + </div> | |
7 | + <div class="card_context"> | |
8 | + <div class="title">{{ v.title }}</div> | |
9 | + <div class="group_font">{{ v.greyTitle }}</div> | |
10 | + </div> | |
13 | 11 | </div> |
12 | + </div> | |
14 | 13 | </template> |
15 | 14 | |
16 | 15 | <script> |
17 | 16 | import videoList from '@/views/dayStudy/data2.json' |
18 | 17 | export default { |
19 | - data() { | |
20 | - return { | |
21 | - }; | |
18 | + data() { | |
19 | + return {} | |
20 | + }, | |
21 | + computed: { | |
22 | + videoList() { | |
23 | + return videoList | |
22 | 24 | }, |
23 | - computed: { | |
24 | - videoList() { | |
25 | - return videoList | |
26 | - } | |
25 | + }, | |
26 | + methods: { | |
27 | + toPath(val) { | |
28 | + console.log(val) | |
29 | + this.$router.push({ | |
30 | + name: 'video', | |
31 | + query: { | |
32 | + url: val.videoUrl, | |
33 | + }, | |
34 | + }) | |
27 | 35 | }, |
28 | - methods: { | |
29 | - toPath(val) { | |
30 | - console.log(val) | |
31 | - window.open(val.videoUrl) | |
32 | - } | |
33 | - } | |
34 | -}; | |
36 | + }, | |
37 | +} | |
35 | 38 | </script> |
36 | 39 | |
37 | 40 | <style lang="scss" scoped> |
38 | 41 | .box { |
39 | - padding-bottom: 30px; | |
40 | - box-sizing: border-box; | |
42 | + padding-bottom: 30px; | |
43 | + box-sizing: border-box; | |
44 | + | |
45 | + .card { | |
46 | + width: 100vw; | |
47 | + height: 535px; | |
48 | + background-color: #fff; | |
49 | + margin-bottom: 30px; | |
50 | + | |
51 | + .card_pic { | |
52 | + height: 400px; | |
53 | + | |
54 | + img { | |
55 | + width: 100%; | |
56 | + height: 100%; | |
57 | + } | |
58 | + } | |
59 | + .card_context { | |
60 | + height: calc(535px - 400px); | |
61 | + padding: 25px 50px 10px; | |
62 | + box-sizing: border-box; | |
63 | + display: flex; | |
64 | + align-content: space-between; | |
65 | + flex-wrap: wrap; | |
41 | 66 | |
42 | - .card { | |
43 | - width: 100vw; | |
44 | - height: 535px; | |
45 | - background-color: #fff; | |
46 | - margin-bottom: 30px; | |
47 | - | |
48 | - .card_pic { | |
49 | - height: 400px; | |
50 | - | |
51 | - img { | |
52 | - width: 100%; | |
53 | - height: 100%; | |
54 | - } | |
55 | - } | |
56 | - .card_context { | |
57 | - height: calc(535px - 400px); | |
58 | - padding: 25px 50px 10px; | |
59 | - box-sizing: border-box; | |
60 | - display: flex; | |
61 | - align-content: space-between; | |
62 | - flex-wrap: wrap; | |
63 | - | |
64 | - .title { | |
65 | - width: 100%; | |
66 | - font-weight: bold; | |
67 | - font-size: 32px; | |
68 | - } | |
69 | - .group_font { | |
70 | - font-size: 28px; | |
71 | - color: #999; | |
72 | - } | |
73 | - } | |
67 | + .title { | |
68 | + width: 100%; | |
69 | + font-weight: bold; | |
70 | + font-size: 32px; | |
71 | + } | |
72 | + .group_font { | |
73 | + font-size: 28px; | |
74 | + color: #999; | |
75 | + } | |
74 | 76 | } |
77 | + } | |
75 | 78 | } |
76 | -</style> | |
77 | 79 | \ No newline at end of file |
80 | +</style> | ... | ... |
... | ... | @@ -0,0 +1,34 @@ |
1 | +<template> | |
2 | + <div class="box"> | |
3 | + <video class="video" :src="videoUrl" controls autoplay></video> | |
4 | + </div> | |
5 | +</template> | |
6 | + | |
7 | +<script> | |
8 | +import videoList from '@/views/dayStudy/data2.json' | |
9 | +export default { | |
10 | + data() { | |
11 | + return { | |
12 | + videoUrl: '', | |
13 | + } | |
14 | + }, | |
15 | + mounted() { | |
16 | + this.videoUrl = decodeURIComponent(this.$route.query.url) | |
17 | + }, | |
18 | + methods: {}, | |
19 | +} | |
20 | +</script> | |
21 | + | |
22 | +<style lang="scss" scoped> | |
23 | +.box { | |
24 | + padding-bottom: 30px; | |
25 | + box-sizing: border-box; | |
26 | + | |
27 | + .video { | |
28 | + width: 100%; | |
29 | + position: absolute; | |
30 | + top: 50%; | |
31 | + transform: translateY(-50%); | |
32 | + } | |
33 | +} | |
34 | +</style> | ... | ... |