百度智能小程序 設(shè)置系統(tǒng)剪貼板的內(nèi)容

2020-09-05 14:29 更新

swan.setClipboardData

解釋:設(shè)置系統(tǒng)剪貼板的內(nèi)容

Web 態(tài)說明:由于 Web 態(tài)環(huán)境安全策略限制,調(diào)用該 API 前必須要存在用戶交互場(chǎng)景(點(diǎn)觸),如果無用戶交互場(chǎng)景下直接調(diào)用,會(huì)導(dǎo)致執(zhí)行成功回調(diào)但實(shí)際功能未生效。因此建議在點(diǎn)擊事件監(jiān)聽等用戶交互場(chǎng)景下使用該 API。

方法參數(shù)

Object object

object 參數(shù)說明

屬性名類型必填默認(rèn)值說明

data

String

需要設(shè)置的內(nèi)容

success

Function

接口調(diào)用成功的回調(diào)函數(shù)

fail

Function

接口調(diào)用失敗的回調(diào)函數(shù)

complete

Function

接口調(diào)用結(jié)束的回調(diào)函數(shù)(調(diào)用成功、失敗都會(huì)執(zhí)行)

示例


圖片示例

代碼示例 1 

在開發(fā)者工具中打開

<view class="wrap">
    <view class="card-area">
        <view class="list-area border-bottom">
            <text class="list-item-key-4">原文本</text>
            <text class="list-item-value">{{originData}}</text>
        </view>
        <view class="list-area border-bottom">
            <text class="list-item-key-4">復(fù)制文本</text>
            <text class="list-item-value">{{clipboardData}}</text>
        </view>
        <button bind:tap="setClipboardData" type="primary" hover-stop-propagation="true">復(fù)制</button>
        <button bind:tap="getClipboardData" type="primary" hover-stop-propagation="true">粘貼</button> 
    </view>
</view>
Page({
    data: {
        originData: 'baidu',
        clipboardData: '',
        medium: ''
    },
    setClipboardData() {
        let originData = this.data.originData;
        swan.setClipboardData({
            data: originData,
            success: res => {
                this.setData('medium', originData);
                swan.showToast({
                    title: '復(fù)制成功',
                    icon: 'none'
                });
            },
            fail: err => {
                swan.showToast({
                    title: '復(fù)制失敗',
                    icon: 'none'
                });
                console.log('setClipboardData fail', err);
            }
        });
    },
    getClipboardData() {
        let medium = this.data.medium;
        if (medium === '') {
            swan.showToast({
                title: '請(qǐng)先復(fù)制',
                icon: 'none'
            });
            return;
        }

        swan.getClipboardData({
            success: res => {
                console.log('getClipboardData success');
                this.setData('clipboardData', medium);
            },
            fail: err => {
                console.log('getClipboardData fail', err);
            }
        });
    }
});

代碼示例 2:此 api 可實(shí)現(xiàn)一鍵復(fù)制的業(yè)務(wù)場(chǎng)景 

在開發(fā)者工具中打開

Page({
    data: {
        infoData: 'infoData'
    },
    onShow() {
        swan.request({
            url: 'https://xxx.com', // 僅為示例,并非真實(shí)的接口地址
            header: {
                'content-type': 'application/json'
            },
            method: 'POST',
            dataType: 'json',
            responseType: 'text',
            data: {
                key: 'value'
            },
            success: res => {
                this.setData('infoData', res.data)
            },
            fail: err => {
                console.log('錯(cuò)誤碼:' + err.errCode);
                console.log('錯(cuò)誤信息:' + err.errMsg);
            }
        });
    },
    setClipboardData() {
        swan.setClipboardData({
            data: this.data.infoData,
            success: () => {
                swan.showToast({
                    title: '一鍵復(fù)制成功',
                    icon: 'none'
                });
            },
            fail: err => {
                swan.showToast({
                    title: '一鍵復(fù)制失敗',
                    icon: 'none'
                });
                console.log('setClipboardData fail', err);
            }
        });
    }
});

    錯(cuò)誤碼

    Android

    錯(cuò)誤碼說明

    202

    解析失敗,請(qǐng)檢查參數(shù)是否正確。

    iOS

    錯(cuò)誤碼說明

    202

    解析失敗,請(qǐng)檢查參數(shù)是否正確。


    以上內(nèi)容是否對(duì)您有幫助:
    在線筆記
    App下載
    App下載

    掃描二維碼

    下載編程獅App

    公眾號(hào)
    微信公眾號(hào)

    編程獅公眾號(hào)