lion 7 days ago
parent 5f7358dfb2
commit 14d4ea21c9

@ -66,6 +66,17 @@
created() {},
methods: {
fallbackQrUrl() {
return `/storage/course_qrcode/${this.row.id}.png?t=${Date.now()}`
},
checkImage(url) {
return new Promise(resolve => {
const img = new Image()
img.onload = () => resolve(true)
img.onerror = () => resolve(false)
img.src = url
})
},
async getCode() {
if (!this.row.id) {
this.imgSrc = ''
@ -82,9 +93,15 @@
this.imgSrc = res.msg || ''
} catch (e) {
this.imgSrc = ''
} finally {
this.loading = false
}
//
if (!this.imgSrc) {
const fallback = this.fallbackQrUrl()
if (await this.checkImage(fallback)) {
this.imgSrc = fallback
}
}
this.loading = false
},
async generateCode() {
if (!this.row.id || this.generating) {
@ -101,7 +118,11 @@
this.$message.success('二维码生成成功')
}
} catch (e) {
// request
const fallback = this.fallbackQrUrl()
if (await this.checkImage(fallback)) {
this.imgSrc = fallback
this.$message.success('二维码已生成')
}
} finally {
this.generating = false
}

Loading…
Cancel
Save