【前端】Element-UI 省市縣級聯選擇器 JSON數據


轉載請注明出處:http://www.cnblogs.com/shamoyuu/p/element_cascader.html

 

不想自己處理的就直接下載吧

 http://shamoyuu.bj.bcebos.com/DontDelete/citys.json

 

效果圖

 

上一章我們學會了用nodejs處理文件,這一章我們就把數據處理成element-ui要求的格式,並保存到temp.txt文件

上代碼

var fs = require('fs');
fs.readFile('out.json', function(err, data) {
    if (err) {
        console.log('文件讀取失敗');
    } else {
        console.log('文件讀取成功');
        
        let citys = eval('(' + data + ')');
        
        let province = [];
        
        // 所有省的jons,固定100000
        let provinceJson = citys['100000'];
        
        let provinceArr = [];
        for(let provinceKey in provinceJson) {
            
            let cityJson = citys[provinceKey];
            console.info(provinceKey)
            
            let cityArr = [];
            for(let cityKey in cityJson) {
                
                let quJson = citys[cityKey];
                
                let quArr = [];
                for(let qukey in quJson) {
                    quArr.push({
                        value: qukey,
                        label: quJson[qukey]
                    });
                }
                if(quArr.length == 0) {
                    console.info(cityKey, cityJson[cityKey], "沒有區");
                    quArr.push({
                        value: cityKey,
                        label: cityJson[cityKey]
                    });
                }
                
                cityArr.push({
                    value: cityKey,
                    label: cityJson[cityKey],
                    children: quArr
                });
            }
            
            if(cityArr.length == 0) {
                console.info(provinceKey, provinceJson[provinceKey], "沒有市");
                cityArr.push({
                    value: provinceKey,
                    label: provinceJson[provinceKey],
                    children: [{
                        value: provinceKey,
                        label: provinceJson[provinceKey],
                    }]
                });
            }
            
            provinceArr.push({
                value: provinceKey,
                label: provinceJson[provinceKey],
                children: cityArr
            });
        }
        

        fs.writeFile('temp.txt', JSON.stringify(provinceArr), function(err) {
            if (err) {
                console.log('文件寫入失敗');
            } else {
                console.log('文件寫入成功');
            }
        });
    }
});

 

然后用nodejs運行這個js,就可以得到我們想要的數據了

 

完結,散花

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM