IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> Vuetify——表单提交 -> 正文阅读

[JavaScript知识库]Vuetify——表单提交

index.vue:

<v-form class="pa-4" ref="form">
   <v-alert
        v-if="verifyResult"
        outlined
        type="error"
        class="text-left body-2 mb-8"
      >
    请填写完整表单数据
    </v-alert>
    <v-row no-gutters dense style="border-bottom:none!important;">
      <v-col cols="3" class="mt-2">
        <v-subheader>
          <span class="red--text">*</span>
          姓名
        </v-subheader>
      </v-col>
      <v-col cols="9" v-if="displayType === 'CREATE'">
        <v-text-field v-model="name" rows="1"></v-text-field>
      </v-col>
      <v-col cols="9" v-else style="margin-top:8px;">
        {{ name }}
      </v-col>
    </v-row>
    <v-row no-gutters dense style="border-bottom:none!important;">
      <v-col cols="3" class="mt-2">
        <v-subheader>
          <span class="red--text">*</span>
          昵称
        </v-subheader>
      </v-col>
      <v-col cols="9">
        <v-text-field v-model="display_name" rows="1"></v-text-field>
      </v-col>
    </v-row>
    <v-row no-gutters dense style="border-bottom:none!important;">
      <v-col cols="3" class="mt-2">
        <v-subheader>
          <span class="red--text">*</span>
          类型
        </v-subheader>
      </v-col>
      <v-col class="d-flex" cols="12" sm="6">
        <v-select
          :items="types"
          :label="value_type ? '' : '请选择'"
          item-text="name"
          item-value="id"
          v-model="value_type"
          @change="getvalue_typeSelected(value_type)"
        ></v-select>
      </v-col>
    </v-row>
    <v-row no-gutters dense style="border-bottom:none!important;">
      <v-col cols="3" class="mt-2">
        <v-subheader>
          <span class="red--text">*</span>
          描述
        </v-subheader>
      </v-col>
      <v-col cols="9">
        <v-text-field v-model="description" rows="1"></v-text-field>
      </v-col>
    </v-row>
    <v-row no-gutters dense style="border-bottom:none!important;">
      <v-col cols="3" class="mt-2">
        <v-subheader>
          <span class="red--text">*</span>
          是否必备
        </v-subheader>
      </v-col>
      <v-col cols="9">
        <v-checkbox class="v-label" v-model="required"></v-checkbox>
      </v-col>
    </v-row>
    <v-row no-gutters dense style="border-bottom:none!important;">
      <v-col cols="3" class="mt-2">
        <v-subheader>
          <span class="red--text">*</span>
          唯一
        </v-subheader>
      </v-col>
      <v-col cols="9" v-if="!(displayType === 'EDIT')">
        <v-checkbox
          class="v-label"
          v-model="unique"
          :disabled="displayType === 'EDIT'"
        ></v-checkbox>
      </v-col>
      <v-col v-else cols="9" style="margin-top:8px;align-self: center;">
        {{ unique ? "是" : "否" }}
      </v-col>
    </v-row>
    <v-row
      no-gutters
      dense
      style="align-items:center;"
      v-if="displayType === 'EDIT'"
    >
      <v-col cols="3" class="mt-2">
        <v-subheader>
          <span class="red--text"></span>
          是否上进
        </v-subheader>
      </v-col>
      <v-col cols="9" style="margin-top:8px;">
        {{ virtual ? "是" : "否" }}
      </v-col>
    </v-row>
    <v-row>
      <v-col class="d-flex" cols="3"></v-col>
      <v-col cols="9" class="text-left">
        <v-btn elevation="4" medium color="primary" @click="submit">
          {{ displayType === "CREATE" ? "新建" : "修改" }}</v-btn
        >
        <v-btn
          class="ml-6"
          elevation="0"
          medium
          color="gary"
          @click="cancel"
          >取消</v-btn
        >
      </v-col>
    </v-row>
  </v-form>


<script>
export default{
	data(){
		displayType: "CREATE",
      editId: null,
      verifyResult: false,
      name: "",
      display_name: "",
      description: "",
      value_type: "",
      required: false,
      unique: false,
      builtin: false,
      virtual: false,
      types: [
        {
          id: "STRING",
          name: "字符串类型"
        },
        {
          id: "BOOLEAN",
          name: "布尔值"
        },
        {
          id: "INTEGER",
          name: "数字类型"
        },
        {
          id: "DATETIME",
          name: "日期时间类型"
        },
        {
          id: "DATE",
          name: "日期类型"
        }
      ]
	},
	methods:{
		getvalue_typeSelected(val) {
      		this.value_type = val;
	    },
	    submit() {
	      if (
	        this.name.trim() !== "" &&
	        this.display_name.trim() !== "" &&
	        this.value_type.trim() !== "" &&
	        this.description.trim() !== ""
	      ) {
	      	//调提交接口
	        this.displayType === "CREATE" ? this.toCreate() : this.toEdit();
	      } else {
	        this.verifyResult = true;
	        setTimeout(() => {
	          this.verifyResult = false;
	        }, 2000);
	      }
	    },
	}
}


</script>
  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-22 13:28:04  更:2021-08-22 13:29:04 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年12日历 -2024/12/27 5:09:01-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码
数据统计