ElementUI组件

news2024/10/7 8:30:17

目录

1、安装ElementUI

2、在main.js文件中加入

3、使用组件

终端运行:


Element,一套为开发者、设计师和产品经理准备的基于Vue2.0的桌面端组件库.

1、安装ElementUI

控制台输入

npm i element-ui -S

2、在main.js文件中加入

import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

Vue.use(ElementUI);

导入ElementUI

import Vue from 'vue'
import App from './App.vue'
//导入elementUI
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

Vue.use(ElementUI);

Vue.config.productionTip=false

import router from './router/index.js'
Vue.use(router);

new Vue({
el: '#app',
router,
render: h => h(App)
}).$mount('#app')

3、使用组件

创建src下目录的router

index.js

import Vue from "vue";
// 导入路由
import router from "vue-router";
//导入注册组件
import Index from '../Index.vue';
import Login from '../Login.vue';
import MajorList from"../views/MajorList.vue";
import StudentList from"../views/StudentList.vue";
/* 注册 定义组件访问地址 */
Vue.use(router);

var rout = new router({
	routes: [{
			path: '/',
			component: Login
		},
		{
			path: '/login',
			component: Login
		},
		{
			path: '/index',
			component: Index,
			children: [{
					path: '/majorlist',
					component: MajorList
				},
				{
					path:'/studentlist',
					component: StudentList
				}
			]
		}
	]
});

//导出路由对象
export default rout;

 创建src下目录的views

Index.vue

<template>
	<div>
		<el-container>
			<el-header style="text-align: right; font-size: 12px">
				<div class="header-title">后台管理系统</div>
				<el-dropdown>
					<i class="el-icon-setting" style="margin-right: 15px"></i>
					<el-dropdown-menu slot="dropdown">
						<el-dropdown-item>修改密码</el-dropdown-item>
						<el-dropdown-item><span @click="logout()"> 安全退出</span></el-dropdown-item>
					</el-dropdown-menu>
				</el-dropdown>
				<span>王小虎</span>
			</el-header>
			<el-container>
				<!-- 侧边栏 -->
				<el-aside width="200px" style="background-color: rgb(238, 241, 246)">
					<el-menu :default-openeds="['1', '3']" router>
						<el-submenu index="1">
							<template slot="title"><i class="el-icon-message"></i>操作菜单</template>
							<el-menu-item-group>
								<el-menu-item index="/majorlist">专业管理</el-menu-item>
								<el-menu-item index="/studentlist">学生管理</el-menu-item>
							</el-menu-item-group>
						</el-submenu>
					</el-menu>
				</el-aside>
				<!-- 工作区间 -->
				<el-main>
					<!-- 显示子路由 -->
					<router-view></router-view>
				</el-main>
			</el-container>
		</el-container>
	</div>
</template>

<script>
	export default {
		data() {
			return {

			}
		},
		methods: {
			logout() {
				this.$confirm('您确定要退出?', '提示', {
					confirmButtonText: '确定',
					cancelButtonText: '取消',
					type: 'warning'
				}).then(() => {
					this.$router.push("/login");
				})
			}
		}
	}
</script>

<style>
	.el-header {
		text-align: center;
		background-color: #B3C0D1;
		color: #333;
		line-height: 60px;
	}

	.header-title {
		width: 300px;
		float: left;
		text-align: left;
		font-size: 20px;
		color: white;
	}

	.el-aside {
		background-color: #D3DCE6;
		color: #333;
		text-align: center;
		line-height: 200px;
	}

	.el-main {
		background-color: #E9EEF3;
		color: #333;
		text-align: center;
		line-height: 160px;
		height: 100vh;
	}
</style>

Login.vue

<template>
	<!-- 一个.vue文件是一个组件,可以理解为一个页面,但是和页面不同 
	  内容都写在一个template标签中,
	  template标签必须有一个根标签
	-->
	<div class="login_container">
		<!-- 登录盒子-->
		<div class="login_box">
			<!-- 头像盒子-->
			<div class="img_box">
				<img src="./assets/logo.png" />
			</div>
			<!-- 登陆表单 -->
			<div>
				<el-form ref="form" lable-width="80px"  style="margin: 50px;">
					<el-form-item label="账号" >
						<el-input v-model="account"></el-input>
					</el-form-item>
					<el-form-item label="密码">
						<el-input v-model="password" show-password></el-input>
					</el-form-item>
					<el-form-item>
						<el-button type="primary" @click="login()">登录</el-button>
						<el-button>取消</el-button>
					</el-form-item>
				</el-form>
			</div>
		</div>
	</div>
</template>

<script>
	/* 导出组件,并为组件定义数据,函数,生命周期函数 */
	export default {
		data() {
			return {
				account: "",
				password: ""
			}
		},
		methods: {
			login() {
				//前端验证账号和密码不能为空
				if (this.account.length == 0) {
					this.$message({
						message: '账号不能为空!',
						type: 'warning'
					});
					return;
				}
				if (this.password.length == 0) {
					this.$message({
						message: '密码不能为空!',
						type: 'warning'
					});
					return;
				}
				//与后端交互
				//向后端相应一个结果
				this.$router.push("/index");
			}
		}
	}
</script>

<style>
	.login_container {
		height: 100vh;
		margin: 0px;
		padding: 0px;
		background-repeat: no-repeat;
		background-size: cover;
		background-image: url(assets/bc.jpg);
	}

	.login_box {
		width: 450px;
		height: 350px;
		background-color: #fff;
		border-radius: 10px;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		opacity: 0.95;
	}

	.img_box {
		width: 130px;
		height: 130px;
		position: absolute;
		left: 50%;
		transform: translate(-50%, -50%);
		background-color: #fff;
		border-radius: 50%;
		padding: 5px;
		border: 1px solid #eee;
	}

	.img_box img {
		width: 100%;
		height: 100%;
		border-radius: 50%;
		background-color: #eee;
	}
</style>

 App.vue

<template>
	<div id="app">
		<router-view></router-view>
	</div>
</template>

<script>
	export default {
		name: 'app'
	}
</script>

<style>
</style>

最后再加入专业管理和学生管理即可

终端运行:

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1873752.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

多模态语言模型的新突破:Reka Core、Flash和Edge系列

人工智能领域的每一次技术革新都可能引领一场行业的变革&#xff0c;特别是在自然语言处理&#xff08;NLP&#xff09;领域&#xff0c;多模态语言模型&#xff08;MLMs&#xff09;正逐渐成为推动智能系统发展的核心力量。Reka团队最新推出的Reka Core、Flash和Edge系列模型&…

经典排序算法详解

目录 创作不易&#xff0c;如对您有帮助&#xff0c;还望一键三连&#xff0c;谢谢&#xff01; 前言 学习目标&#xff1a; 直接插入排序 基本思想&#xff1a; 代码 希尔排序&#xff1a; gap取值 代码 特性总结 选择排序 基本思想 代码 堆排序 思想 代码 冒…

Omni 动画核心运动包 - 为 Unity 游戏开发者带来卓越体验

Omni 动画核心运动包 前言资源包内容领取兑换码 前言 亲爱的 Unity 游戏开发者们&#xff0c;今天要向大家介绍一款令人瞩目的动画资源 - Omni 动画核心运动包。 这个运动包包含了多达 74 个 mocap 运动动画&#xff0c;每一个动画都是由专业演员通过我们先进的人工智能驱动动…

2024-6-28 石群电路-32

2024-6-28&#xff0c;星期五&#xff0c;20:05&#xff0c;天气&#xff1a;雨&#xff0c;心情&#xff1a;晴。今天没有什么事情发生&#xff0c;继续学习&#xff0c;加油&#xff01;&#xff01;&#xff01;&#xff01;&#xff01; 1. 对称三相电路的计算&#xff08…

海外注册 | 一分钟看懂医疗器械CE认证:欧盟市场准入指南

摘要 ✨ 医疗器械制造商进入欧盟市场必须确保其产品符合欧盟法规要求。本指南提供快速了解CE认证流程的途径&#xff0c;帮助制造商迅速且合规地进入欧盟市场。 监管机构与法规 欧盟医疗器械的监管主要由医疗器械法规&#xff08;MDR&#xff09;和体外诊断医疗器械法规&…

瓦罗兰特新赛季更新资讯 瓦罗兰特新赛季免费加速器

瓦罗兰特新赛季来喽&#xff0c;这是一款由拳头开发的免费第一人称射击游戏&#xff0c;游戏凭借其独特的玩法和丰富的英雄选择吸引了大量玩家。 我们可以在游戏中选择自己喜欢的角色出场与敌人进行对战&#xff0c;而且每一个角色都有自己独特的道具以及技能&#xff0c;使用好…

mtu 1500 qdisc noop state DOWN group default qlen 1000问题的解决

问题描述 1、打开虚拟机终端&#xff0c;root身份启动ens网卡&#xff08;一般情况下还是会直接报错 ifup ens33 2、停止网卡设置disable再启动 systemctl stop NetworkManager 不报错即可 systemctl disable NetworkManagerservice network restart出现了绿色的OK啦&#…

权限维持-域环境单机版---自启动

免责声明:本文仅做技术交流与学习... 目录 1.windows自启动路径加载 2.自启动服务加载 3.自启动注册表加载 所在regedit目录: -添加启动项 --重启生效 4.计划计时任务 windows软件或程序服务开机自启动的四种方式-CSDN博客 1.windows自启动路径加载 --当windows注销…

随身WiFi这潭死水是如何被格行这条“鲶鱼”搅动的?随身wifi靠谱品牌推荐

如果在过去提起随身WiFi&#xff0c;大家无外乎都会贴出这几个标签&#xff1a;限速虚量、割韭菜、跑路等负面词汇。但是如今再说起随身WiFi&#xff0c;更多的则是&#xff1a;方便、实惠、省钱。到底是什么原因&#xff0c;让随身WiFi的名声就发生了翻天覆地的变化呢&#xf…

【漏洞复现】用友 GRP-U8 FileUpload 任意文件上传漏洞

免责声明&#xff1a; 本文内容旨在提供有关特定漏洞或安全漏洞的信息&#xff0c;以帮助用户更好地了解可能存在的风险。公布此类信息的目的在于促进网络安全意识和技术进步&#xff0c;并非出于任何恶意目的。阅读者应该明白&#xff0c;在利用本文提到的漏洞信息或进行相关测…

什么是 Azure OpenAI?

目录 一、说明 二、什么是 Azure OpenAI 2.1 网络结构 2.2 、为什么使用 Azure OpenAI 2.3 如何使用 Azure OpenAI 三、从哪里开始 Azure OpenAI 之旅 3.1 关于 Azure OpenAI&#xff0c;我还需要了解什么 3.2 RBAC 权限和角色 3.3 演示 1&#xff1a;在公共数据上应用…

【机器学习】Whisper:开源语音转文本(speech-to-text)大模型实战

目录 一、引言 二、Whisper 模型原理 2.1 模型架构 2.2 语音处理 2.3 文本处理 三、Whisper 模型实战 3.1 环境安装 3.2 模型下载 3.3 模型推理 3.4 完整代码 3.5 模型部署 四、总结 一、引言 上一篇对​​​​​​​ChatTTS文本转语音模型原理和实战进行了讲解&a…

HDC Cloud 2024 | CodeArts加速软件智能化开发,携手HarmonyOS重塑企业应用创新体验

2024年6月21~23日&#xff0c;华为开发者大会HDC 2024在东莞溪流背坡村隆重举行。期间华为云主办了以“CodeArts加速软件智能化开发&#xff0c;携手HarmonyOS重塑企业应用创新体验”为主题的分论坛。论坛汇聚了各行各业的专家学者、技术领袖和开发者&#xff0c;共同探讨Harmo…

EE5805-Java-summary

Summary of Class What is the class?How to create a class?Constructorthis&#xff08;super&#xff09;static What is the class?How to create a class? 类&#xff08;class&#xff09;是一个模版&#xff0c;表示一类对象的行为&#xff08;method&#xff09…

VMware Workstation环境下,DHCP服务的安装配置,用ubuntu来测试

需求说明: 某企业信息中心计划使用IP地址17216.11.0用于虚拟网络测试,注册域名为xyz.net.cn.并将172.16.11.2作为主域名的服务器(DNS服务器)的IP地址,将172.16.11.3分配给虚拟网络测试的DHCP服务器,将172.16.11.4分配给虚拟网络测试的web服务器,将172.16.11.5分配给FTP服务器…

Vue基础了解

目录 1、什么是Vue.js 2、Vue的优点 3、Vue的安装 4、Vue程序 5、Vue指令 代码演示&#xff1a; 6、Vue实例的生命周期 1、什么是Vue.js Vue (读音 /vjuː /&#xff0c;类似于 view) 是一套用于构建用户界面的渐进式框架。Vue 的核心库只关注视图层&#xff0c;不仅易…

canvas画二维码并生成图片(微信原生可用,其余的平台可以自行尝试)

效果展示&#xff1a; 1.首先创建weapp.qrcode.esm.js文件&#xff0c;将以下代码复制上去&#xff08;适用于微信原生小程序&#xff09;&#xff0c;建议创在utils文件下 /*** weapp.qrcode.js v1.0.0 (https://github.com/yingye/weapp-qrcode#readme)*/(function (global,…

AMEYA360:三星HBM产品KHAA84901B-JC17介绍!

三星公司是韩国最大的跨国企业之一&#xff0c;成立于1938年&#xff0c;总部位于首尔。公司业务涵盖电子产品、半导体、通信设备、家电、金融、化学等多个领域。三星电子是三星集团旗下最大的子公司&#xff0c;主要生产智能手机、平板电脑、电视、笔记本电脑等电子产品。三星…

JAVA编程题期末题库【中】

8.计算邮资 程序代码: public static void main(String[] args) {// 计算邮资//if多分支语句//创建对象java.util.Scanner inputnew java.util.Scanner(System.in); //提示输入用户&#xff0c;输入邮件的重量System.out.println("邮件的重量&#xff1a;");int wei…

python办公自动化之pandas

用到的库&#xff1a;pandas 实现效果&#xff1a;创建一张空白的表同时往里面插入准备好的数据 代码&#xff1a; import pandas # 准备好要写入的数据&#xff0c;字典格式 data{日期:[7.2,7.3],产品型号:[ca,ce],成交量:[500,600]} dfpandas.DataFrame(data) # 把数据写入…