Add enum for vue project
Add file, file name
File content:
//How to use/** * Get the enum value: * Get enumeration description: ('SH') * Get description by enumeration value: ('TG') */ let STATUSMAP = createEnum({ SH: [0, 'Additional'], TG: [1, 'Audit passed'], }); function createEnum(definition) { const valueMap = {}; const descMap = {}; for (const key of (definition)) { const [value, desc] = definition[key]; valueMap[key] = value; descMap[value] = desc; } return { ...valueMap, getDesc(key) { return (definition[key] && definition[key][1]) || 'none'; }, getDescFromValue(value) { return descMap[value] || 'none'; } } } export default STATUSMAP;
Reference in vue file
import STATUSMAP from "@/enum";
How to use
Use in js
//Get the enum value: //Get the enumeration description:(‘SH') //Get description by enumeration values:(‘TG')
Use of enumeration in vue
Scenarios involved: match the corresponding text according to the fields returned by the backend, and display the page
1. Create a js file such as:
const enums = { // Roleroles: { ADMINISTRATOR: 'Manager', LEADER: 'team leader' } } export { enums }
2. Introduce directly on the page
html:
<div class="table-detail"> <el-table v-loading="loading" :data="list" height="222"> <el-table-column label="Serial Number" type="index"> <template slot-scope="scope"> {{ (pageNum - 1) * pageSize + scope.$index + 1 }} </template> </el-table-column> <el-table-column label="Section of labor"> <template slot-scope="scope"> {{ [] }} </template> </el-table-column> </el-table> </div>
js:
import { enums } from '@/utils/common' data() { return { enums: enums } }
The above is personal experience. I hope you can give you a reference and I hope you can support me more.