123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- <template>
- <div id="one">
- <el-row>
- <el-col :span="24" class="main">
- <el-form :model="form" :rules="rules" ref="form" label-width="180px">
- <el-row>
- <template v-for="(f, fi) in fields">
- <el-col v-if="f.type === 'select'" :span="12" :key="`five-${f.model}-${fi}`">
- <el-form-item :label="f.label">
- <el-select v-model="form[f.model]" filterable placeholder="">
- <el-option v-for="(c, ci) in getList(f.list)" :key="`five-${f.model}-${fi}-c-${ci}`" :label="c" :value="c"></el-option>
- </el-select>
- </el-form-item>
- </el-col>
- </template>
- </el-row>
- </el-form>
- </el-col>
- </el-row>
- </div>
- </template>
- <script>
- const { five } = require('../fields');
- const selectArray = require('../select');
- import { mapState, createNamespacedHelpers } from 'vuex';
- export default {
- name: 'one',
- props: {
- form: { type: Object },
- rules: { type: Object },
- },
- model: {
- prop: 'form',
- event: 'change',
- },
- components: {},
- data: function() {
- return {
- fields: five,
- };
- },
- created() {},
- methods: {
- getList(mod) {
- return selectArray[mod];
- },
- },
- computed: {
- ...mapState(['user']),
- },
- metaInfo() {
- return { title: this.$route.meta.title };
- },
- watch: {
- test: {
- deep: true,
- immediate: true,
- handler(val) {},
- },
- },
- };
- </script>
- <style lang="less" scoped>
- /deep/.el-input__inner {
- border: 1px solid #333;
- }
- </style>
|