vue中form表单禁用专用组件介绍

 更新时间:2024年01月16日 08:39:24   作者:是文静的  
这篇文章主要介绍了vue中form表单禁用专用组件,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

form表单禁用专用组件

JFormContainer.vue

<template>
  <div :class="disabled?'jeecg-form-container-disabled':''">
    <fieldset :disabled="disabled">
      <slot name="detail"></slot>
    </fieldset>
    <slot name="edit"></slot>
    <fieldset disabled>
      <slot></slot>
    </fieldset>
  </div>
</template>


<script>
/**
   * 使用方法
   * 在form下直接写这个组件就行了,
   *<a-form layout="inline" :form="form" >
   *     <j-form-container :disabled="true">
   *         <!-- 表单内容省略..... -->
   *     </j-form-container>
   *</a-form>
   */
export default {
  name: 'JFormContainer',
  props: {
    disabled: {
      type: Boolean,
      default: false,
      required: false
    }
  },
  mounted () {
    console.log('我是表单禁用专用组件,但是我并不支持表单中iframe的内容禁用')
  }
}
</script>
<style>
  .jeecg-form-container-disabled{
    cursor: not-allowed;
  }
  .jeecg-form-container-disabled fieldset[disabled] {
    -ms-pointer-events: none;
    pointer-events: none;
  }
  .jeecg-form-container-disabled .ant-select{
    -ms-pointer-events: none;
    pointer-events: none;
  }

  .jeecg-form-container-disabled .ant-upload-select{display:none}
  .jeecg-form-container-disabled .ant-upload-list{cursor:grabbing}
  .jeecg-form-container-disabled fieldset[disabled] .ant-upload-list{
    -ms-pointer-events: auto !important;
    pointer-events: auto !important;
  }

  .jeecg-form-container-disabled .ant-upload-list-item-actions .anticon-delete,
  .jeecg-form-container-disabled .ant-upload-list-item .anticon-close{
    display: none;
  }
</style>
<template>
  <a-form layout="inline" :form="form" >
      <j-form-container :disabled="true">
        <!-- 表单内容省略..... -->
        <a-row class="form-row" :gutter="16">
          <a-col :lg="10" :md="10" :sm="20">
            <a-form-item label="文件">
              <a-button> <a-icon type="upload" /> 上传 </a-button>
            </a-form-item>
          </a-col>
        </a-row>
        <a-row class="form-row" :gutter="16">
          <a-col :lg="10" :md="10" :sm="20">
            <a-form-item label="文件">
              <a-button> <a-icon type="upload" /> 上传 </a-button>
            </a-form-item>
          </a-col>
        </a-row>
      </j-form-container>
    </a-form>
</template>
<script>
import JFormContainer from '@/components/jeecg/JFormContainer'
export default {
  components: {
    JFormContainer  
  },
  data () {
    return {
      form: this.$form.createForm(this)
    }
  },
  methods: {}
}
</script>

<style scoped>

</style>

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vant IndexBar实现的城市列表的示例代码

    vant IndexBar实现的城市列表的示例代码

    这篇文章主要介绍了vant IndexBar实现的城市列表的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • Vue项目打包、合并及压缩优化网页响应速度

    Vue项目打包、合并及压缩优化网页响应速度

    网站页面的响应速度与用户体验息息相关,直接影响到用户是否愿意继续访问你的网站,所以这篇文章主要给大家介绍了关于Vue项目打包、合并及压缩优化网页响应速度的相关资料,需要的朋友可以参考下
    2021-07-07
  • Vue.js 中的父子组件通信方式实例教程

    Vue.js 中的父子组件通信方式实例教程

    在 Vue.js 中,父子组件通信是非常重要的,在本文中,我们讨论了 Vue.js 中父子组件通信的几种方式,包括使用 props 传递数据、使用 Sync 修饰符实现双向绑定、使用自定义事件传递数据、使用 $refs 访问子组件实例以及使用 $children 和 $parent 访问父子组件实例
    2023-09-09
  • element多选表格中使用Switch开关的实现

    element多选表格中使用Switch开关的实现

    当在做后台管理系统的时候,会用到用户的状态管理这个功能,本文主要介绍了element多选表格中使用Switch开关的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • 关于eslint和prettier格式化冲突问题

    关于eslint和prettier格式化冲突问题

    这篇文章主要介绍了eslint和prettier格式化冲突问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-08-08
  • Vant Uploader实现上传一张或多张图片组件

    Vant Uploader实现上传一张或多张图片组件

    这篇文章主要为大家详细介绍了Vant Uploader实现上传一张或多张图片组件,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题的解决方法

    SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题的解决方法

    这篇文章主要介绍了SpringBoot+Vue前后端分离,使用SpringSecurity完美处理权限问题,需要的朋友可以参考下
    2018-01-01
  • Vue 莹石摄像头直播视频实例代码

    Vue 莹石摄像头直播视频实例代码

    本文通过实例代码给大家介绍了vue 莹石摄像头直播视频功能,文章还给大家提到了vue h5项目调用手机摄像头录像并上传的功能,需要的朋友可以参考下
    2018-08-08
  • Vue实现无缝轮播效果

    Vue实现无缝轮播效果

    这篇文章主要为大家详细介绍了Vue实现无缝轮播效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-04-04
  • 使用el-row及el-col页面缩放时出现空行的问题及解决

    使用el-row及el-col页面缩放时出现空行的问题及解决

    这篇文章主要介绍了使用el-row及el-col页面缩放时出现空行的问题及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-03-03

最新评论