天天看點

harmonyos 從配置檔案中擷取資料

需求:制作裝置的控制頁面,裝置有很多型号,功能可能有所不同。根據型号的typeid從配置檔案中擷取功能清單。

配置檔案:deviceConfig.js

const defaultConfig = {
    typeid: "",
    autoModeArr: [
        {
            name: "大師智選",
            label: "autoMode",
            value: "1",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
        {
            name: "舒壓放松",
            label: "autoMode",
            value: "2",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
        {
            name: "拉伸舒展",
            label: "autoMode",
            value: "39",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
        {
            name: "助眠搖椅",
            label: "autoMode",
            value: "6",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
        {
            name: "疏通調理",
            label: "autoMode",
            value: "9",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
        {
            name: "元氣喚醒",
            label: "autoMode",
            value: "8",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
        {
            name: "樂齡舒享",
            label: "autoMode",
            value: "4",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
        {
            name: "工作減壓",
            label: "autoMode",
            value: "5",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
        {
            name: "運動恢複",
            label: "autoMode",
            value: "3",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
        {
            name: "肩頸釋壓",
            label: "autoMode",
            value: "11",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
        {
            name: "腰背呵護",
            label: "autoMode",
            value: "10",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
        {
            name: "美臀纖體",
            label: "autoMode",
            value: "12",
            icon: "/common/img/operate_light_unsel.png",
            offIcon: "/common/img/operate_light_offline.png",
            activeIcon: "/common/img/operate_light_sel.png",
            flag: false
        },
    ],
};

const deviceArr = [{
   typeid: "******************************************************",
   autoModeArr: [
       {
           name: "大師智選",
           label: "autoMode",
           value: "1",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
       {
           name: "舒壓放松",
           label: "autoMode",
           value: "2",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
       {
           name: "拉伸舒展",
           label: "autoMode",
           value: "39",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
       {
           name: "助眠搖椅",
           label: "autoMode",
           value: "6",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
       {
           name: "疏通調理",
           label: "autoMode",
           value: "9",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
       {
           name: "元氣喚醒",
           label: "autoMode",
           value: "8",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
       {
           name: "樂齡舒享",
           label: "autoMode",
           value: "4",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
       {
           name: "工作減壓",
           label: "autoMode",
           value: "5",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
       {
           name: "運動恢複",
           label: "autoMode",
           value: "3",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
       {
           name: "肩頸釋壓",
           label: "autoMode",
           value: "11",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
       {
           name: "腰背呵護",
           label: "autoMode",
           value: "10",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
       {
           name: "美臀纖體",
           label: "autoMode",
           value: "12",
           icon: "/common/img/operate_light_unsel.png",
           offIcon: "/common/img/operate_light_offline.png",
           activeIcon: "/common/img/operate_light_sel.png",
           flag: false
       },
   ],
}];
/**
*根據typeid比對對應的配置檔案
**/
export function configDeviceFeature( typeid ) {
    deviceArr.map((item,index)=>{
        if(item.typeid == typeid){
            return item.autoModeArr;
        }
    });
    return defaultConfig.autoModeArr;
}
           

調用:

import {configDeviceFeature} from '../../common/util/deviceConfig.js'

export default {
    async onInit () {
        let autoModeList = configDeviceFeature('********');
        console.log('autoModeList==='+JSON.stringify(autoModeList));
    }
}
           

繼續閱讀