|
@@ -4,6 +4,7 @@ import styles from './index.module.less'
|
|
import { postMessage, promisefiyPostMessage } from '@/helpers/native-message'
|
|
import { postMessage, promisefiyPostMessage } from '@/helpers/native-message'
|
|
import html2canvas from 'html2canvas'
|
|
import html2canvas from 'html2canvas'
|
|
import ShareItem from './share-item'
|
|
import ShareItem from './share-item'
|
|
|
|
+import request from '@/helpers/request'
|
|
|
|
|
|
export default defineComponent({
|
|
export default defineComponent({
|
|
name: 'col-share',
|
|
name: 'col-share',
|
|
@@ -18,20 +19,34 @@ export default defineComponent({
|
|
},
|
|
},
|
|
data() {
|
|
data() {
|
|
return {
|
|
return {
|
|
- qrCode: '',
|
|
|
|
- image: null as any
|
|
|
|
|
|
+ image: null as any,
|
|
|
|
+ codeUrl: ''
|
|
}
|
|
}
|
|
},
|
|
},
|
|
- mounted() {
|
|
|
|
- this.$nextTick(async () => {
|
|
|
|
- const container: any = document.getElementById('share-preview-container')
|
|
|
|
- html2canvas(container, { allowTaint: true, useCORS: true }).then(
|
|
|
|
- canvas => {
|
|
|
|
- const url = canvas.toDataURL('image/png')
|
|
|
|
- this.image = url
|
|
|
|
|
|
+ async mounted() {
|
|
|
|
+ try {
|
|
|
|
+ const shortRes = await request.post('/api-teacher/sysConfig/shortURL', {
|
|
|
|
+ requestType: 'form',
|
|
|
|
+ data: {
|
|
|
|
+ orginURL: this.shareUrl
|
|
}
|
|
}
|
|
- )
|
|
|
|
- })
|
|
|
|
|
|
+ })
|
|
|
|
+ this.codeUrl = shortRes.data
|
|
|
|
+
|
|
|
|
+ this.$nextTick(async () => {
|
|
|
|
+ const container: any = document.getElementById(
|
|
|
|
+ 'share-preview-container'
|
|
|
|
+ )
|
|
|
|
+ html2canvas(container, { allowTaint: true, useCORS: true }).then(
|
|
|
|
+ canvas => {
|
|
|
|
+ const url = canvas.toDataURL('image/png')
|
|
|
|
+ this.image = url
|
|
|
|
+ }
|
|
|
|
+ )
|
|
|
|
+ })
|
|
|
|
+ } catch {
|
|
|
|
+ //
|
|
|
|
+ }
|
|
},
|
|
},
|
|
methods: {
|
|
methods: {
|
|
async onSaveImg() {
|
|
async onSaveImg() {
|
|
@@ -76,38 +91,51 @@ export default defineComponent({
|
|
render() {
|
|
render() {
|
|
return (
|
|
return (
|
|
<>
|
|
<>
|
|
- <div class={styles.shareContainer}>
|
|
|
|
- <Swipe
|
|
|
|
- showIndicators={false}
|
|
|
|
- loop={false}
|
|
|
|
- style={{ borderRadius: '10px', overflow: 'hidden' }}
|
|
|
|
- >
|
|
|
|
- <SwipeItem>
|
|
|
|
- <ShareItem teacherId={this.teacherId} shareUrl={this.shareUrl} />
|
|
|
|
- </SwipeItem>
|
|
|
|
- <SwipeItem>
|
|
|
|
- <ShareItem teacherId={this.teacherId} shareUrl={this.shareUrl} />
|
|
|
|
- </SwipeItem>
|
|
|
|
- <SwipeItem>
|
|
|
|
- <ShareItem teacherId={this.teacherId} shareUrl={this.shareUrl} />
|
|
|
|
- </SwipeItem>
|
|
|
|
- </Swipe>
|
|
|
|
- </div>
|
|
|
|
|
|
+ {this.codeUrl && (
|
|
|
|
+ <>
|
|
|
|
+ <div class={styles.shareContainer}>
|
|
|
|
+ <Swipe
|
|
|
|
+ showIndicators={false}
|
|
|
|
+ loop={false}
|
|
|
|
+ style={{ borderRadius: '10px', overflow: 'hidden' }}
|
|
|
|
+ >
|
|
|
|
+ <SwipeItem>
|
|
|
|
+ <ShareItem
|
|
|
|
+ teacherId={this.teacherId}
|
|
|
|
+ shareUrl={this.codeUrl}
|
|
|
|
+ />
|
|
|
|
+ </SwipeItem>
|
|
|
|
+ <SwipeItem>
|
|
|
|
+ <ShareItem
|
|
|
|
+ teacherId={this.teacherId}
|
|
|
|
+ shareUrl={this.codeUrl}
|
|
|
|
+ />
|
|
|
|
+ </SwipeItem>
|
|
|
|
+ <SwipeItem>
|
|
|
|
+ <ShareItem
|
|
|
|
+ teacherId={this.teacherId}
|
|
|
|
+ shareUrl={this.codeUrl}
|
|
|
|
+ />
|
|
|
|
+ </SwipeItem>
|
|
|
|
+ </Swipe>
|
|
|
|
+ </div>
|
|
|
|
|
|
- <div class={['btnGroup', styles.shareGroupBtn]}>
|
|
|
|
- <Button type="primary" round onClick={this.onSaveImg}>
|
|
|
|
- 保存图片
|
|
|
|
- </Button>
|
|
|
|
- <Button
|
|
|
|
- type="primary"
|
|
|
|
- round
|
|
|
|
- onClick={() => {
|
|
|
|
- this.shareShow()
|
|
|
|
- }}
|
|
|
|
- >
|
|
|
|
- 立即分享
|
|
|
|
- </Button>
|
|
|
|
- </div>
|
|
|
|
|
|
+ <div class={['btnGroup', styles.shareGroupBtn]}>
|
|
|
|
+ <Button type="primary" round onClick={this.onSaveImg}>
|
|
|
|
+ 保存图片
|
|
|
|
+ </Button>
|
|
|
|
+ <Button
|
|
|
|
+ type="primary"
|
|
|
|
+ round
|
|
|
|
+ onClick={() => {
|
|
|
|
+ this.shareShow()
|
|
|
|
+ }}
|
|
|
|
+ >
|
|
|
|
+ 立即分享
|
|
|
|
+ </Button>
|
|
|
|
+ </div>
|
|
|
|
+ </>
|
|
|
|
+ )}
|
|
</>
|
|
</>
|
|
)
|
|
)
|
|
}
|
|
}
|