溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

vue如何讀取本地文件

發(fā)布時(shí)間:2021-09-15 12:53:15 來源:億速云 閱讀:785 作者:小新 欄目:編程語言

小編給大家分享一下vue如何讀取本地文件,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

vue讀取本地文件的方法:1、通過“function (name) {...}”獲取本地的文件;2、在組件中引入并進(jìn)行相應(yīng)的字符串處理;3、通過循環(huán)將“this.iconList”里面的值綁定到“<i></i>”的class即可。

本文操作環(huán)境:Windows7系統(tǒng)、Vue2.9.6版,DELL G3電腦

vue怎么讀取本地文件?

vue中讀取本地文件

背景

再項(xiàng)目開發(fā)過程中,有動(dòng)態(tài)設(shè)置字體圖標(biāo)的需求,保證圖標(biāo)選框中的圖標(biāo)和最后發(fā)布的項(xiàng)目圖標(biāo)庫一致。

思路

讀取本地字體圖標(biāo)庫文件,然后進(jìn)行相應(yīng)的字符串轉(zhuǎn)換,這樣就可以保持圖標(biāo)的一致啦

步驟

1、獲取本地的文件

const loadFile = function (name) { // name為文件所在位置
    let xhr = new XMLHttpRequest(),
        okStatus = document.location.protocol === "file:" ? 0 : 200;
    xhr.open('GET', name, false);
    xhr.overrideMimeType("text/html;charset=utf-8");//默認(rèn)為utf-8
    xhr.send(null);
    return xhr.status === okStatus ? xhr.responseText : null;
}
export default loadFile;

2、組件中引入并進(jìn)行相應(yīng)的字符串處理

import loadFile from '../assets/js/localFile';

處理獲取到的文件數(shù)據(jù)

            // 以.iconfont為節(jié)點(diǎn)分割字符串,只需要.iconfont之后的字符串
                let iconData = loadFile('iconfont/iconfont.css').split('.iconfont')[1];
                // 獲取第一次出現(xiàn)'}'時(shí)候的索引值
                let iconLi = iconData.indexOf('}');
                // 得到第一次出現(xiàn)'}'之后的所有字符串信息【這部分就是我們需要的字體圖標(biāo)的信息】
                let liList = iconData.substring(iconLi + 1, iconData.length-1);
                // 分割每個(gè)字體圖標(biāo)信息
                let icons = liList.split('.');
                // 設(shè)置分割標(biāo)識(shí)
                let flag = ':before';
                // 循環(huán)獲取到的字體圖標(biāo)數(shù)組
                for (let i = 0; i < icons.length; i++) {
                    // 判斷不為空
                    if (icons[i].indexOf(flag) > -1) {
                        // 獲取圖標(biāo)信息中的class部分,也就是:before之前的信息
                        let liList = icons[i].split(flag);
                        // 將class添加到數(shù)組,最后再頁面上進(jìn)行循環(huán)輸出
                        this.iconList.push(liList[0]);
                    }
                }

最后通過循環(huán),將 this.iconList 里面的值綁定到 <i></i> 的 class 即可。

以上是“vue如何讀取本地文件”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

vue
AI