npm i clipboard -S

    1. import Clipboard from 'clipboard'
    2. export default function copyText(text = '', callback) {
    3. let _resolve
    4. // 复制文本到剪切板
    5. let tempBtn = document.createElement('div')
    6. let clipboard = new Clipboard(tempBtn, {
    7. text: () => { return text }
    8. })
    9. clipboard.on('success', (e) => {
    10. clipboard.destroy()
    11. tempBtn = null
    12. if (callback) {
    13. callback()
    14. } else if (_resolve) {
    15. _resolve()
    16. }
    17. })
    18. if (!callback) {
    19. return new Promise(resolve => {
    20. _resolve = resolve
    21. tempBtn.click()
    22. })
    23. } else {
    24. tempBtn.click()
    25. }
    26. }