zoukankan      html  css  js  c++  java
  • vuejs经验交流之-components(组件)

        Vue的组件化功能可谓是它的一大亮点,通过将页面上某一组件的html、CSS、js代码放入一个.vue的文件中进行管理可以大大提高代码的维护性。

    子组件 setmap.vue

    <template>
            <Form ref="formValidate"  :model="formValidate" :rules="ruleValidate" label-position="left" :label-width="100">
              <Collapse v-model="formValidate.value" accordion>
                <Panel name="1">
                  2D模式
                  <p slot="content">
                    <Form-item label="地图名称" prop="name" :label-width="80">
                      <Input v-model="formValidate.name" placeholder="请输入地图名称"></Input>
                    </Form-item>
                    <Form-item label="地图类型" prop="maptype" :label-width="80">
                      <Radio-group v-model="formValidate.maptype">
                        <Radio label="gisMap">Gis地图</Radio>
                        <Radio label="staticMap">静态地图</Radio>
                      </Radio-group>
                    </Form-item>
                    <Form-item v-show="gisMap" label="地图服务" prop="mapservre" :label-width="80">
                      <Input v-model="formValidate.mapservre" placeholder="请输入地图服务">
                      </Input>
                    </Form-item>
                     <Form-item v-show="staticMap" label="地图文件" prop="mapservre" :label-width="80">
                      <Input v-model="formValidate.mapservre" placeholder="请输入地图服务">
                      </Input><Button style="cursor: pointer;position: absolute;background-color: #5d5d5d;left:398px;top:2px;border:0px;"  @click="addSysPic" type="text">预览</Button>
                    </Form-item>
                    <input type="file" @change="onSysFileChange" id="fileSysGrade" style="display: none">
                    <Form-item label="级别" prop="zoomLevel" :label-width="80">
                      <Select v-model="formValidate.zoomLevel" placeholder="请选择级别">
                        <Option v-for="item in carLevel" :key="item" :value="item.value">{{item.label}}</Option>
                      </Select>
                    </Form-item>
                    <Form-item label="中心点" prop="center" :label-width="80">
                      <Input v-model="formValidate.center" placeholder="请输入中心点"></Input>
                    </Form-item>
                    <Form-item label="地图范围" prop="extent" :label-width="80">
                      <Input v-model="formValidate.extent" placeholder="请输入地图范围"></Input>
                    </Form-item>
                  </p>
                </Panel>
                <Panel name="2">
                  2.5D模式
                  <p slot="content">2.5D模式</p>
                </Panel>
                <Panel name="3">
                  3D模式
                  <p slot="content">3D模式</p>
                </Panel>
              </Collapse>
              <Form-item  class="mapSaveButton" style="height: 20px;border-top: 1px solid #5d5d5d;">
                <Button type="ghost" @click="handleReset('formValidate')" style="margin-left:334px;margin-bottom: -12px;margin-right: 10px;">取消</Button>
                <Button type="primary" @click="handleSubmit('formValidate')" style="margin-bottom: -12px;">保存</Button>
              </Form-item>
            </Form>
    </template>
    <script>
    export default {
      data() {
        return {
          formValidate: {
            id: '',
            name: '',
            center: '',
            zoomLevel: '3',
            extent: '',
            maptype: 'gisMap',
            mapservre: '',
            isstatic: false,
            value: '1',
            type: '2D'
          },
          staticMap: false,
          gisMap: true,
          carLevel: [{'value': '1', 'label': '1级'}, {'value': '2', 'label': '2级'}, {'value': '3', 'label': '3级'}, {'value': '4', 'label': '4级'}, {'value': '5', 'label': '5级'}, {'value': '6', 'label': '6级'}, {'value': '7', 'label': '7级'}],
          ruleValidate: {
            name: [
              { required: true, message: '服务名不能为空', trigger: 'blur' }
            ],
            center: [
              { required: true, message: '中心点不能为空', trigger: 'blur' }
            ],
            zoomLevel: [
              { required: true, message: '级别不能为空', trigger: 'blur' }
            ],
            extent: [
              { required: true, message: '地图范围不能为空', trigger: 'blur' }
            ],
            mapservre: [
              { required: true, message: '地图服务不能为空', trigger: 'blur' }
            ],
            maptype: [
              { required: true, message: '地图类型不能为空', trigger: 'blur' }
            ]
          }
        }
      },
      components: {
      },
      computed: {
      },
      created() {
      },
      watch: {
      },
      methods: {
      },
      mounted() {
      },
      beforeDestroy() {
      }
    }
    </script>
    <style scoped>
    </style>

    父组件mapConfig.vue

    <template>
        <div class="mapSet">
          <div class="addMap">添加地图</div>
          <div class="mapConfig">
           <setMap @saveClick='homeSaveClick'></setMap> //引用 setMap组件
         </div>
        </div>
    </template>
    <script>
    import setMap from './setmap.vue' //import导入
    export default {
      data() {
        return {
        }
      },
      components: {
        setMap //注册
      },
      created() {
      },
      watch: {
      },
      computed: {
      },
      methods: {
      },
      mounted() {
      },
      beforeDestroy() {
      }
    }
    </script>
    <style scoped>
    .mapSet {
      background-color: #171717;
      padding: 28px 16px 1px 11px;
       598px;
      border-radius: 5px 5px 5px 5px;
      position: fixed;
      left: 620px;
      top: 146px
    }
    .mapConfig {
      background-color: #171717;
    }
    .addMap {
      background-color: #5d5d5d;
      top: -28px;
      position: relative;
       598px;
      height: 51.32px;
      left: -11px;
      padding: 12px 0px 0px 19px;
      border-radius: 5px 5px 0 0;
      font-size: 14px;
    }
    
    </style>
  • 相关阅读:
    关于.NET Reflector
    Windows Debugging之九
    在IA32如何将程序计数器的值放入到整数寄存器中?
    [陆续添加]计算机网络最最基础的基本概念
    ASCII表
    [翻译文章]我们是如何做到的: 提高SharePoint.Microsoft.com站点的性能
    Windows API是什么?
    寄存器使用惯例
    阅读笔记 了解ASP.NET底层架构 之一
    汇编程序中的返回值
  • 原文地址:https://www.cnblogs.com/zhaoboxing/p/7204812.html
Copyright © 2011-2022 走看看