欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

微信小程序?qū)崿F(xiàn)保存影集和圖片到相冊

 更新時(shí)間:2021年08月23日 11:51:27   作者:aiguangyuan  
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)保存影集和圖片到相冊,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

最近在開發(fā)一個(gè)視頻和工具類的小程序,類似于小年糕,需要實(shí)現(xiàn)將用戶制作的影集保存到本地手機(jī)的相冊上,頁面效果如下:

實(shí)現(xiàn)的邏輯如下:

1. 獲取用戶授權(quán), 如果之前已授權(quán)直接下載。

2. 如果用戶之前沒有授權(quán),則調(diào)起用戶授權(quán)界面,讓用戶授權(quán),用戶同意則下載,不同意則提示。

3. 如果之前調(diào)起授權(quán)了,但是用戶拒絕了,打開設(shè)置界面,引導(dǎo)用戶開啟授權(quán)。

以下是代碼實(shí)現(xiàn),歡迎大家復(fù)制粘貼和吐槽。

首先是WXML代碼:

<view class="album-operate"> 
    <view class="edit" bindtap="deleteAlbum"  data-id="{{item.id}}" data-status="{{item.status}}">
        刪除
    </view>
 
    <button class="save" data-link="{{item.link}}" data-status="{{item.status}}" bindtap='downloadAlbum'>
        保存/下載
    </button>
 
    <view class="share" bindtap="desabledShare" wx:if="{{item.status==2}}">分享</view>
    <button class="share" open-type="share" data-id="{{item.id}}" data-cover="{{item.cover_url}}" data-name="{{item.name}}" wx:if="{{item.status!=2}}">
        分享
    </button>
</view>

以下是JS代碼

// 授權(quán)下載
downloadAlbum: function(e) {
    var that = this;
    // 影集狀態(tài)
    var status = e.target.dataset.status;
    // 下載鏈接的地址
    var link = e.target.dataset.link;
 
    if (status == 2) {
        wx.showToast({
            title: '影集正在制作中,請等待',
            icon: 'none'
        });
    } else {
        // 獲取用戶授權(quán)
        wx.getSetting({
            success(res) {
                // 如果已授權(quán)
                if (res.authSetting['scope.writePhotosAlbum']) {
                    that.saveAlbum(link);
                // 如果沒有授權(quán) 
                } else if (res.authSetting['scope.writePhotosAlbum'] === undefined) {
                    // 調(diào)起用戶授權(quán)
                    wx.authorize({
                        scope: 'scope.writePhotosAlbum',
                        success() {
                            that.saveAlbum(link);
                        },
                        fail() {
                            wx.showToast({
                                title: '您沒有授權(quán),無法保存到相冊',
                                icon: 'none'
                            })
                        }
                    })
                // 如果之前授權(quán)已拒絕
                } else {
                    wx.openSetting({
                        success(res) {
                            if (res.authSetting['scope.writePhotosAlbum']) {
                                that.saveAlbum(link);
                            } else {
                                wx.showToast({
                                    title: '您沒有授權(quán),無法保存到相冊',
                                    icon: 'none'
                                })
                            }
                        }
                    })
                }
            }
        })
    }
},
 
// 保存影集
saveAlbum: function (link) {
    wx.downloadFile({
        url: link,
        success(res) {
            if (res.statusCode === 200) {
                var path = res.tempFilePath
                wx.saveVideoToPhotosAlbum({
                    filePath: path,
                    success(res) {
                        if (res.errMsg == 'saveVideoToPhotosAlbum:ok') {
                            wx.showToast({
                                title: '下載完成',
                            })
                        }
                    }
                })
            }
        }
    })
},

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 代碼觸發(fā)js事件(click、change)示例應(yīng)用

    代碼觸發(fā)js事件(click、change)示例應(yīng)用

    Chrome , Firfox 不支持fireEvent的方法可以使用dispatchEvent的方法替代,直接給一個(gè)兼容的Code,下面有個(gè)不錯(cuò)的示例,喜歡的朋友可以收藏下
    2013-12-12
  • javaScript中定義類或?qū)ο蟮奈宸N方式總結(jié)

    javaScript中定義類或?qū)ο蟮奈宸N方式總結(jié)

    下面小編就為大家?guī)硪黄猨avaScript中定義類或?qū)ο蟮奈宸N方式總結(jié)。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-12-12
  • BootStrap 智能表單實(shí)戰(zhàn)系列(五) 表單依賴插件處理

    BootStrap 智能表單實(shí)戰(zhàn)系列(五) 表單依賴插件處理

    這篇文章主要介紹了BootStrap 智能表單實(shí)戰(zhàn)系列(五) 表單依賴插件處理 的相關(guān)資料,比較簡單,主要介紹生產(chǎn)表單元素后的一些后續(xù)處理操作,非常不錯(cuò)具有參考借鑒價(jià)值,感興趣的朋友一起看看吧
    2016-06-06
  • JS功能代碼集錦

    JS功能代碼集錦

    這篇文章主要介紹了JS功能代碼集錦 的相關(guān)資料,需要的朋友可以參考下
    2016-05-05
  • javascript克隆元素樣式的實(shí)現(xiàn)代碼

    javascript克隆元素樣式的實(shí)現(xiàn)代碼

    這是一個(gè)實(shí)驗(yàn)用的玩意,它可以克隆指定元素的最終樣式,并包裝成一個(gè)css類,它還可以證明Oprea 11.10 是個(gè)混球
    2011-10-10
  • javascript開發(fā)隨筆二 動(dòng)態(tài)加載js和文件

    javascript開發(fā)隨筆二 動(dòng)態(tài)加載js和文件

    js無非就是script標(biāo)簽引入頁面,但當(dāng)項(xiàng)目越來越大的時(shí)候,單頁面引入N個(gè)js顯然不行,合并為單個(gè)文件減少了請求數(shù),但請求的文件體積卻很大
    2011-11-11
  • 利用JavaScript如何查詢某個(gè)值是否數(shù)組內(nèi)

    利用JavaScript如何查詢某個(gè)值是否數(shù)組內(nèi)

    這篇文章主要給大家介紹了關(guān)于利用JavaScript如何查詢某個(gè)值是否數(shù)組內(nèi)的相關(guān)資料,文中通過示例代碼分別介紹了實(shí)現(xiàn)該問題的一些解決方法是否可行,需要的朋友可以參考借鑒,下面跟著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-07-07
  • Javascript常用字符串判斷函數(shù)代碼分享

    Javascript常用字符串判斷函數(shù)代碼分享

    這篇文章主要分享了一段Javascript常用字符串判斷函數(shù)的代碼,基本上常見的字符串判斷都涵蓋在內(nèi)了,非常實(shí)用,小伙伴們參考下。
    2014-12-12
  • 關(guān)于JavaScript的with 語句的使用方法

    關(guān)于JavaScript的with 語句的使用方法

    JavaScript 有個(gè) with 關(guān)鍵字, with 語句的原本用意是為逐級(jí)的對象訪問提供命名空間式的速寫方式. 也就是在指定的代碼區(qū)域, 直接通過節(jié)點(diǎn)名稱調(diào)用對象
    2011-05-05
  • JS實(shí)現(xiàn)的貪吃蛇游戲完整實(shí)例

    JS實(shí)現(xiàn)的貪吃蛇游戲完整實(shí)例

    這篇文章主要介紹了JS實(shí)現(xiàn)的貪吃蛇游戲,結(jié)合完整實(shí)例形式分析了javascript實(shí)現(xiàn)貪吃蛇游戲的具體步驟、原理與相關(guān)操作技巧,需要的朋友可以參考下
    2019-01-01

最新評論