Your Name 3 år sedan
förälder
incheckning
4dfe5ec95f

+ 2
- 2
config/dev.js Visa fil

@@ -3,8 +3,8 @@ module.exports = {
3 3
     NODE_ENV: '"development"'
4 4
   },
5 5
   defineConstants: {
6
-    HOST: '"https://xlk.njyz.tech"',
7
-    // HOST: '"https://xlj.newlandsh.com"',
6
+    // HOST: '"https://xlk.njyz.tech"',
7
+    HOST: '"https://xlj.newlandsh.com"',
8 8
     // HOST: '"http://127.0.0.1:8081"',
9 9
     WSS_HOST: '"wss://xlk.njyz.tech"',
10 10
     OSS_PATH: '"https://xlk-assets.oss-accelerate.aliyuncs.com/"',

+ 0
- 23
src/components/Poster/Poster.jsx Visa fil

@@ -70,29 +70,6 @@ export default (props) => {
70 70
         }
71 71
       }, 200);
72 72
 
73
-
74
-      // Promise.all([
75
-      //   // sdk.getImage(poster),
76
-      //   sdk.getImage(miniCode),
77
-      //   // sdk.getImage(avatar),
78
-      // ]).then((res) => {
79
-      //   const [posterImg, miniCodeImg, avatarImg] = res
80
-
81
-      //   // 封面
82
-      //   sdk.drawImage(posterImg, conf.poster)
83
-      //   // 头像
84
-      //   sdk.drawImage(avatarImg, conf.avatar)
85
-      //   // 小程序码
86
-      //   sdk.drawImage(miniCodeImg, conf.miniCode)
87
-
88
-      //   //
89
-      //   const image = sdk.toDataURL()
90
-      //   onEnd(image, sdk)
91
-      // }).catch(([e1, e2, e3]) => {
92
-      //   if (onError) {
93
-      //     onError([e1, e2, e3])
94
-      //   }
95
-      // })
96 73
     }
97 74
   }, [sdk, dataSource, onStart, onEnd, onError])
98 75
 

+ 10
- 39
src/components/Poster/index.jsx Visa fil

@@ -1,9 +1,8 @@
1 1
 import React, { useRef, useState } from 'react'
2 2
 import Taro from '@tarojs/taro'
3
-// import PageModal from '@/components/PageModal'
4
-import { authorize } from '@/utils/wxAuth'
5 3
 import { View, Image, Button } from '@tarojs/components'
6 4
 import Spin2 from '@/components/Spin/Spin2'
5
+import { save2Album } from '@/utils/image'
7 6
 import Poster from './Poster'
8 7
 import './style.scss'
9 8
 
@@ -37,44 +36,16 @@ export default (props) => {
37 36
       return
38 37
     }
39 38
 
40
-    authorize('scope.writePhotosAlbum').then(() => {
41
-      setLoading(true)
42
-
43
-      // 先生成到临时位置
44
-      sdkRef.current.download().then((tempPath) => {
45
-        // 再保存到相册
46
-        Taro.saveImageToPhotosAlbum({
47
-          filePath: tempPath,
48
-          success: () => {
49
-            Taro.showToast({
50
-              title: '保存成功',
51
-              icon: 'none',
52
-              duration: 3000,
53
-            })
54
-            onSuccess()
55
-          },
56
-          fail: (err) => {
57
-            console.error(err)
58
-            const message = err.errMsg || err.message || err
59
-            Taro.showToast({
60
-              title: message,
61
-              icon: 'none',
62
-            })
63
-          },
64
-          complete: () => {
65
-            setLoading(false)
66
-          }
67
-        })
68
-      }).catch((err) => {
39
+    // 保存到相册
40
+    setLoading(true)
41
+    sdkRef.current.download().then((tempPath) => {
42
+      save2Album(tempPath).then(() => {
69 43
         setLoading(false)
70
-        console.error(err)
71
-        const message = err.errMsg || err.message || err
72
-        Taro.showToast({
73
-          title: message,
74
-          icon: 'none',
75
-        })
76
-      })
44
+        onSuccess()
45
+        Taro.showToast({ title: '保存成功', icon: 'none' })
46
+      }, () => setLoading(false))
77 47
     }).catch((err) => {
48
+      setLoading(false)
78 49
       console.error(err)
79 50
       const message = err.errMsg || err.message || err
80 51
       Taro.showToast({
@@ -85,7 +56,7 @@ export default (props) => {
85 56
   }
86 57
 
87 58
   const handleImage = (e) => {
88
-    Taro.previewImage({ current: img, urls: [img] })
59
+    Taro.previewImage({ current: img, urls: [img], showmenu: true })
89 60
   }
90 61
 
91 62
   return (

+ 13
- 12
src/pages/mine/myRecommendCode/index.jsx Visa fil

@@ -1,11 +1,11 @@
1 1
 import { useState, useEffect } from 'react'
2 2
 import { Image } from '@tarojs/components'
3 3
 import withLayout from '@/layout'
4
-import '@/assets/css/iconfont.css'
5 4
 import { fetch } from '@/utils/request'
6 5
 import { API_QRCODE } from '@/constants/api'
7
-import { getImgURL } from '@/utils/image'
6
+import { getImgURL, save2Album } from '@/utils/image'
8 7
 import Taro from '@tarojs/taro'
8
+import '@/assets/css/iconfont.css'
9 9
 import './index.scss'
10 10
 
11 11
 export default withLayout((props) => {
@@ -27,15 +27,15 @@ export default withLayout((props) => {
27 27
     Taro.downloadFile({
28 28
       url: QrCodeUrl,
29 29
       success: function(res) {
30
-        let tempFilePath = res.tempFilePath
31
-        Taro.saveFile({
32
-          tempFilePath: tempFilePath,
33
-          success: function() {
34
-            Taro.showToast({title: '保存成功', icon: 'none'})
35
-          },
36
-          fail: function() {
37
-            Taro.showToast({title: '保存失败', icon: 'none'})
38
-          }
30
+        save2Album(res.tempFilePath).then(() => {
31
+          Taro.showToast({ title: '保存成功', icon: 'none' })
32
+        })
33
+      },
34
+      fail: function(err) {
35
+        console.error(err)
36
+        Taro.showToast({
37
+          title: '操作失败, 您可以试试预览保存',
38
+          icon: 'none'
39 39
         })
40 40
       }
41 41
     })
@@ -44,7 +44,8 @@ export default withLayout((props) => {
44 44
   const PreviewImage = () => {
45 45
     Taro.previewImage({
46 46
       current: QrCodeUrl,
47
-      urls: [QrCodeUrl]
47
+      urls: [QrCodeUrl],
48
+      showmenu: true,
48 49
     })
49 50
   }
50 51
 

+ 45
- 0
src/utils/image.js Visa fil

@@ -1,4 +1,6 @@
1 1
 
2
+import Taro from '@tarojs/taro'
3
+import { authorize } from './wxAuth'
2 4
 // eslint-disable-next-line no-undef
3 5
 const host = HOST;
4 6
 
@@ -9,3 +11,46 @@ export function getImgURL(img) {
9 11
 
10 12
   return `${host}${img}`;
11 13
 }
14
+
15
+/**
16
+ * 保存到相册
17
+ * @param {*} tempPath 
18
+ * @returns 
19
+ */
20
+export function save2Album(tempPath) {
21
+  return new Promise((resolve, reject) => {
22
+    authorize('scope.writePhotosAlbum').then(() => {
23
+      // 再保存到相册
24
+      Taro.saveImageToPhotosAlbum({
25
+        filePath: tempPath,
26
+        success: () => {
27
+          resolve()
28
+        },
29
+        fail: (err) => {
30
+          console.error(err)
31
+          let message = err.errMsg || err.message || err
32
+          if (message.indexOf('cancel') > -1) {
33
+            message = '您已取消'
34
+          }
35
+          Taro.showToast({
36
+            title: message,
37
+            icon: 'none',
38
+          })
39
+          reject(err)
40
+        }
41
+      })
42
+    }).catch((err) => {
43
+      console.error(err)
44
+      let message = err.errMsg || err.message || err
45
+      if (message.indexOf('cancel') > -1) {
46
+        message = '您已取消'
47
+      }
48
+
49
+      Taro.showToast({
50
+        title: message,
51
+        icon: 'none',
52
+      })
53
+      reject(err)
54
+    })
55
+  })
56
+}