browser-file-utils 如何使用?

1、簡(jiǎn)介

瀏覽器文件操作方法集合

2、作用

包含很多文件操作方法

3、如何使用

3.1 安裝

npm i browser-file-utils

3.2 使用方法

引入

import fileUtils from 'browser-file-utils'

or 

import {
    getBaseName,
} from 'browser-file-utils'

獲取無(wú)后綴名的文件名

import {
    getBaseName,
} from 'browser-file-utils'
console.log(getBaseName('user-avater.png')) // user-avater
console.log(getBaseName('user-avater.jpg.png')) // user-avater.jpg

獲取文件名的后綴名

import {
    getExtension,
} from 'browser-file-utils'
console.log(getExtension('user-record-list.docx')) // docx

判斷文件是否為圖片

import {
    isImage,
} from 'browser-file-utils'
console.log(isImage('a.b.c.docx')) // false
console.log(isImage('user-avater.png')) // true

計(jì)算文件大小

import {
    countMB,
} from 'browser-file-utils'
console.log(countMB('1024')) // 1.00 KB
console.log(countMB('5325886')) // 5.08 MB
console.log(countMB('5656545484')) // 5.27 GB
console.log(countMB('5656545484')) // 5.14 TB

圖片元素對(duì)象轉(zhuǎn)換為base64字符串

import {
    image2Base64,
} from 'browser-file-utils'

let image = document.createElement('img')
image.src = './demo/WX20210513-091307.png'
document.body.appendChild(image)
image.onload = function () {
    let imageBase64 = image2Base64(image)
    console.log(imageBase64)
}

服務(wù)器圖片轉(zhuǎn)為base64

import {
    getImgBase64,
} from 'browser-file-utils'

getImgBase64('./demo/WX20210513-091307.png', (imgBase64) => {
    console.log(imgBase64)
})

base64 轉(zhuǎn)為 blob對(duì)象

import {
    getImgBase64,
    base64ToBlob,
} from 'browser-file-utils'

getImgBase64('./demo/WX20210513-091307.png', (imgBase64) => {
    console.log(imgBase64)
    // base64轉(zhuǎn)換為 blob對(duì)象
    let imageBlob = base64ToBlob(imgBase64)
    console.log(imageBlob)
})

blob對(duì)象轉(zhuǎn)為file對(duì)象

import {
    getImgBase64,
    base64ToBlob,
    blob2File,
} from 'browser-file-utils'

getImgBase64('./demo/WX20210513-091307.png', (imgBase64) => {
    console.log(imgBase64)
    // base64轉(zhuǎn)換為 blob對(duì)象
    let imageBlob = base64ToBlob(imgBase64)
    console.log(imageBlob)
    // 將blob對(duì)象轉(zhuǎn)為file對(duì)象
    let fileObject = blob2File(imageBlob, 'test.png')
    console.log(fileObject)
})

通過(guò)input文件域獲取到的圖片file對(duì)象轉(zhuǎn)為base64

import {
    getImgBase64,
    base64ToBlob,
    blob2File,
    imageFileToBase64,
} from 'browser-file-utils'

getImgBase64('./demo/WX20210513-091307.png', (imgBase64) => {
    console.log(imgBase64)
    // base64轉(zhuǎn)換為 blob對(duì)象
    let imageBlob = base64ToBlob(imgBase64)
    console.log(imageBlob)
    // 將blob對(duì)象轉(zhuǎn)為file對(duì)象
    let fileObject = blob2File(imageBlob, 'test.png')
    console.log(fileObject)
    // 將一個(gè)image file對(duì)象轉(zhuǎn)為base64
    imageFileToBase64(fileObject, (res) => {
        // res = { error, data }
        let imgTag = document.createElement('img')
        imgTag.src = res.data
        document.body.appendChild(imgTag)
    })
})

下載文件到本地

import {
    downloadFile
} from 'browser-file-utils'

downloadFile('tt.txt', 'http://127.0.0.1:8080/demo/tt.txt')
downloadFile('WX20210513-091307.png', 'http://127.0.0.1:8080/demo/WX20210513-091307.png')
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容