Загрузка изображения JS-SDK публичной учетной записи WeChat

1. Есть два способа импорта: вы можете использовать npm или напрямую загрузить файл js для импорта.

npm установить модуль jweixin --save

 2. После того, как зависимость загружена, вы можете напрямую импортировать и настраивать параметры прямо на странице, на которой нужно отключить функцию загрузки изображения:

var wx = require('jweixin-module');

3. Инкапсулируйте общий метод разрешения инъекции и вызовите этот метод в onShow.

// Общий метод
            gongyong() {                 // Запись URL-адреса при входе в приложение                 if (typeof window.entryUrl === 'undefined' || window.entryUrl === '') {                     window.entryUrl = location.href.split ( '#')[0]                 }                 let isiOS = !!navigator.userAgent.match(/\(i[^;]+;( U;)? CPU.+Mac OS X/); //терминал ios// выполнить                 Android не нужно использовать предыдущую ссылку при подписании, ios необходимо                 let signLink = isiOS                 ? ---- --- Текущий URL-адрес подписи-------------')                 console.log(signLink, 'URL-адрес подписи',window.location.href.split('#')[0 ],местоположение .href.split('#')[0])









                // var uri = encodeURIComponent(location.href.split('#')[0]); //Получить текущий URL-адрес и передать его в фоновый режим для получения информации об авторизации и подписи
                var uri = encodeURIComponent(signLink); // Получите текущий URL-адрес, а затем передайте его в фоновый режим для получения информации об авторизации и подписи
                // Сервер подписывает
                uni.request({                     url: 'ваш собственный адрес интерфейса', //                       данные адреса вашего интерфейса: {                         url: uri                     },                     успех : (resss) => {                         console.log('------signature return data------')                         console.log(resss.data)                         // Возвращаем необходимые параметры appId, timestamp, noncestr, signal и т. д.                           // Внедрить конфигурацию разрешений конфигурации









                        wx.config({                             debug: false,                             appId: resss.data.appId,                             timestamp: resss.data.timestamp,                             nonceStr: resss.data.nonceStr,                             подпись: resss.data.signature,                             jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData ', 'editAddress', 'chooseImage',                                 'onMenuShareAppMessage', 'onMenuShareTimeline', 'previewImage', 'uploadImage',                                 'downloadImage', 'chooseWXPay', 'getLocation'                             ]                         });










                        wx.ready(function() {                             console.log('конфигурация успешно введена')                         })                         wx.error(function(res){                             console.log(res, 'если проверка информации конфигурации не удалась, будет выполнена функция ошибки' )                           // информация о конфигурации Если проверка не удалась, будет выполнена функция ошибки. Если срок действия подписи истек, а проверка не удалась, конкретную информацию об ошибке можно просмотреть в режиме отладки конфигурации или в возвращаемом параметре res. Для SPA, здесь можно обновить подпись. });                         }                     }                 )             } ,

                            







 

4. Вызов интерфейса загрузки изображения при нажатии на операцию (идентификатор потому, что на моей странице есть несколько загрузок изображений, поэтому идентификатор используется для различения.)

// загрузить изображение
            clickuploadimg(id) {                 let that = this                 let imgnum = 0                 if(id == 4 || id == 5 || id == 6) {                     imgnum = 1                 } else {                     imgnum = 9                 }                 let num = 0                 wx.chooseImage({                     count: imgnum, // По умолчанию 9                     sizeType: ['original', 'compressed'], // Вы можете указать исходное изображение или сжатое изображение, оба имеют sourceType по умолчанию: ['                     album', ' camera'], // Вы можете указать, является ли источником альбом или камера, и оба они имеют                     успех по умолчанию: function (res) {













                        const tempFilePaths = res.localIds;// res.localIds — это массив, возвращает список локальных идентификаторов выбранной фотографии, localId можно использовать как атрибут src тега img для отображения картинки if(id == 1)
                        {                             // личное фото                             that.xianzhiphoto = that.xianzhiphoto.concat(res.localIds)                         } else if(id == 2) {                         } else if(id == 3) {                         } else if (id == 4) { } else if (id == 4) {                         } else if (id == 5) {                         } else if (id == 6) {                         }                         uni.showLoading({                             title: 'Загрузка~',                         });











                        for(var i = 0; i < tempFilePaths.length; i++){                             wx.uploadImage({                                 localId: tempFilePaths[i], // Локальный идентификатор загружаемого изображения, полученный из интерфейса ChooseImage                                 isShowProgressTips: tempFilePaths.length , // Значение по умолчанию — 1, показывающее                                 успех подсказки о ходе выполнения: function (respo) { // respo.serverId — это строка (то есть media_id, требуемый серверной частью)                                     num = num + 1                                     if(id == 1) {                                         // личное фото                                         that.xianzhiphotoid .push(respo.serverId)                                     } else if(id == 2) {









                                    } else if(id == 3) {                                     } else if(id == 4) {                                     } else if(id == 5) {                                     } else if(id == 6) {                                     }                                     if (num == tempFilePaths.length) {                                         uni.hideLoading()                                         uni.showToast({                                             title: "上传成功",                                             icon: 'success',                                         })                                         // that.show = true











                                    }
                                }
                            });
                        }
                    },
                    fail: function(res) {                         uni.showToast({                             title: "Загрузка выполнена успешно",                             icon: res,                         })                     },                 })             },






 

Показать результаты

Supongo que te gusta

Origin blog.csdn.net/lovewangyage/article/details/126870432
Recomendado
Clasificación