首页 > 其他分享 >前端自学(5)-使用Vue组件库element书写前端代码

前端自学(5)-使用Vue组件库element书写前端代码

时间:2024-11-06 20:44:49浏览次数:6  
标签:Vue val 前端 布局 element 组件 代码 页面

element是饿了么团队研发的,一套为开发者,设计师和产品经理提供的基于Vue2.0的桌面端组件库。官网:Element - 网站快速成型工具

有了element组件库,开发人员就可以通过CV(复制粘贴。)制作出精美的前端页面。下面是一个简单页面的示例,我将为大家演示如何制作一个这样的页面。

1.首先我们可以看到,这个页面分为了三部分,一部分是左侧的导航栏,上边的菜单栏和中间部分。在element组件库中提供了很多种布局方式,我们可以打开官网查看:

(1)点击右上角的组件按钮:

(2)在左侧可以找到布局容器,如图:

往下滑有很多布局的样式,我们选择合适我们页面的三种布局结构:

接下来我们可以看到在下面有显示代码,我们点击显示代码,element组件库已经为我们写好了各种布局容器的代码,我们只需要选择合适的布局容器复制代码到VSCode即可:

2.在左侧菜单栏中我们看到有导航栏下拉有两部分内容,我们在element组件库中同样可以找到,还是在布局容器中:

同样将其下面相对应的代码复制过去。

我们按照页面的样式修改一下代码内容(这里我直接复制了最终的代码,因为流程都是一样的,只需要找到对应的组件然后复制粘贴代码):

<template>
    <div>
        <el-container style="height: 700px; border: 1px solid #eee">
            <el-header style="font-size:40px; background-color: rgb(238,241,246);">Vue-element组件案例</el-header>
            <el-container>
                <el-aside width="200px">
                    <el-menu :default-openeds="['1', '3']">
                        <el-submenu index="1">
                            <template slot="title"><i class="el-icon-message"></i>系统信息管理</template>
                            <el-menu-item index="1-1">部门管理</el-menu-item>
                            <el-menu-item index="1-2">员工管理</el-menu-item>
                        </el-submenu>
                    </el-menu>
                </el-aside>
                <el-main> <!-- 页面中间主要部分 -->
                    <!-- 表单 -->
                    <el-form :inline="true" :model="SearchForm" class="demo-form-inline">
                        <el-form-item label="姓名">
                            <el-input v-model="SearchForm.name" placeholder="请输入员工姓名"></el-input>
                        </el-form-item>
                        <el-form-item label="性别">
                            <el-select v-model="SearchForm.gender" placeholder="请选择">
                                <el-option label="男" value="1"></el-option>
                                <el-option label="女" value="2"></el-option>
                            </el-select>
                        </el-form-item>
                        <el-form-item label="入职时间">
                            <el-date-picker v-model="SearchForm.entrydate" type="daterange" range-separator="至"
                                start-placeholder="开始日期" end-placeholder="结束日期">
                            </el-date-picker>
                        </el-form-item>
                        <el-form-item>
                            <el-button type="primary" @click="onSubmit">查询</el-button>
                        </el-form-item>
                    </el-form>

                    <!-- 表格 -->
                    <el-table :data="tableData" border> <!-- 表格加边框只需要在标签中增加border属性 -->
                        <el-table-column prop="name" label="姓名" width="140"></el-table-column>
                        <el-table-column prop="image" label="图像" width="120"></el-table-column>
                        <el-table-column prop="gender" label="性别" width="140"></el-table-column>
                        <el-table-column prop="job" label="职位" width="140"></el-table-column>
                        <el-table-column prop="entrydate" label="入职日期" width="180"></el-table-column>
                        <el-table-column prop="updatetime" label="最后操作时间" width="230"></el-table-column>
                        <el-table-column label="操作">
                            <el-button type="primary" size="mini">编辑</el-button>
                            <el-button type="danger" size="mini">删除</el-button>
                        </el-table-column>
                    </el-table>
                    
                    <br>

                    <!-- 分页条 -->
                    <el-pagination background layout="total, sizes, prev, pager, next, jumper"
                        @size-change="handleSizeChange" 
                        @current-change="handleCurrentChange"
                        :total="1000"></el-pagination>
                </el-main>
            </el-container>
        </el-container>
    </div>
</template>

<script>
export default {
    data() {
        return {
            SearchForm: {
                name: "",
                gender: "",
                entrydate: []
            },
            tableData: [],
            ruleForm: {
                date1: '',
                date2: '',
            },
            rules: {
                date1: [
                    { type: 'date', required: true, message: '请选择日期', trigger: 'change' }
                ],
                date2: [
                    { type: 'date', required: true, message: '请选择时间', trigger: 'change' }
                ],
            }
        }
    },
    methods: {
        onSubmit() {
            alert('查询数据');
        },
        handleSizeChange:function(val){
          alert("每页记录数发生变化"+val)
        },
        handleCurrentChange:function(val){
          alert("页码发生变化"+val)
        }
    }
}
</script>

<style></style>

注意:相对应的数据模型和方法都要在<script>标签中写明。大家可以复制代码在浏览器中查看页面效果。

标签:Vue,val,前端,布局,element,组件,代码,页面
From: https://blog.csdn.net/m0_74048455/article/details/143495036

相关文章

  • Vue项目中动态路由与权限控制:router.beforeEach的使用及无token重定向登录页
    在现代前端项目中,权限控制是一个非常重要的环节。VueRouter作为Vue官方的路由管理器,为我们提供了强大的路由管理功能。在本文中,我们将探讨如何在Vue项目中使用router.beforeEach钩子函数来实现动态路由权限控制,并在用户未登录时自动重定向到登录页。步骤一:登录并获取Token首......
  • Ruoyi-Vue后端单表user 的CURD 功能代码和测试
    目录一.创建或导入user表二.添加代码1.User2.UserMapper3.UserService4.HelloController5.UserMapper.mxl编辑三.屏蔽新加接口安全防护策略​编辑四.PostMan测试Get查询Post添加Put修改Delete删除五.实验中遇到的问题及解决方案1."error":"NotFound"2.Requiredreque......
  • 为了降低前端开发可视化大屏难度,设计师能有什么作为呢
    一、引言在当今数字化时代,可视化大屏作为一种强大的数据展示和分析工具,被广泛应用于各个领域,如企业管理、智慧城市、金融科技等。然而,前端开发可视化大屏往往面临着诸多挑战,其开发难度较大,需要投入大量的时间和精力。在这个过程中,设计师扮演着至关重要的角色。那么,为了降低前......
  • 前端开发中如何在页面加载时自动读取并转换指定的 .docx 文件
    前端开发中如何在页面加载时自动读取并转换指定的.docx文件,并实现在线预览功能。我在这里分享通过mammoth.min.js插件来实现docx在线预览功能第1:下载地址,大家可以任意选取下面其中一种方式下载(1)GitHub-mwilliamson/mammoth.js:ConvertWorddocuments(.docxfiles)toH......
  • 浏览器是如何渲染页面的? - 2024最新版前端秋招面试短期突击面试题
    浏览器是如何渲染页面的?-2024最新版前端秋招面试短期突击面试题【100道】......
  • 前端保留两位小数toFixed(2)会有坑
    (422.445).toFixed(2)"422.44"(422.165).toFixed(2)"422.17"(422.446).toFixed(2)"422.45"(422.455).toFixed(2)"422.45"(422.456).toFixed(2)"422.46"(422.465).toFixed(2)"422.46"(422.466).toFix......
  • bug解决记录:前端解密后的中文是问号的解决办法
     最近的项目中,遇到了这个问题,我们的容灾环境要进行演练,但是进行切换到容灾环境的时候,发现返回的中文都是?问号解决思路:1.先看下接口的请求头和响应头是不是指定了这个编码格式。排查出来发现都是有的2.看下解密和加密是否有指定编码格式设置字符byte[]bytes=srcData.getByt......
  • 聊聊vue的 vue-intersect 插件
    1.vue-intersect 插件vue-intersect 是一个Vue.js的插件,它提供了对元素的可视区(viewport)交集检测的功能,可以用来实现懒加载等效果。使用 vue-intersect 需要先安装它,然后在你的Vue项目中配置并使用。1.1.相关地址https://blog.csdn.net/gitblog_00963/article/det......
  • ssm052游戏攻略网站的设计与实现+vue(论文+源码)-kaic
      毕业设计(论文)题目:游戏攻略网站设计与实现      摘 要现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本游戏攻略网站就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完......
  • vue实现天地图电子围栏
    一、文档vue3javascriptWGS84、GCj02相互转换天地图官方文档注册登录然后申请应用key,通过CDN引入<scriptsrc="http://api.tianditu.gov.cn/api?v=4.0&tk=您的密钥"type="text/javascript"></script>二、分析所谓电子围栏1、就是在地图商通过经纬度将点标注出......