Below I will share with you an example of Vue front-end engineering operation for building element-ui. It has a good reference value and I hope it will be helpful to everyone.
1. Install npm image
#(1) Download node.js and configure the environment variables of node.js
Check whether the PATH environment variable is configured with Node.js, click Start=》Run=》Enter "cmd" => Enter the command "path"
Check the Node.js version
Enter in the command window: npm install -g cnpm –registry=https://registry.npm.taobao.org
2. Install global vue-cli
(1) npm install -g vue-cli and press Enter to verify whether the installation is successful. On the command line Enter vue, and the vue information comes out indicating that the installation is successful
3. Global installation of vue-cli
(1) npm install --global vue-cli
4. Create a new project based on the webpack template
(1) vue init webpack my-project (project name)
(2)cd my-project
(3)npm install
(4)npm run dev
5. Environment to be installed
(1) npm install sass-loader --save-dev
(2) npm install gulp-sass
(3) npm install -- save axios
(4) npm install element-ui -S
(5) npm install vuex --save
6. Packages that need to be introduced (element-ui)
(1) import ElementUI from 'element-ui'
(2) import 'element-ui/lib/theme-default/index.css'
(3 ) import Vue from 'vue'
(4) Use: Vue.use(ElementUI)
7. Project code structure
Project source code: https://github.com/davis0511/school-ui
(1)
(2) Home.vue
<template> <el-row class="container"> <el-col :span="24" class="header"> <el-col :span="20" class="logo"> <img src="/static/imghwm/default1.png" data-src="./assets/logo4.png" class="lazy" / alt="How to build element-ui (detailed tutorial)" > <span>学校管理<i class="txt">系统</i></span> </el-col> <el-col :span="4" class="userinfo"> <el-dropdown trigger="click"> <span class="el-dropdown-link userinfo-inner"><img src="/static/imghwm/default1.png" data-src="this.sysUserAvatar" class="lazy" : / alt="How to build element-ui (detailed tutorial)" > {{sysUserName}}</span> <el-dropdown-menu slot="dropdown"> <el-dropdown-item>我的消息</el-dropdown-item> <el-dropdown-item>设置</el-dropdown-item> <el-dropdown-item pided @click.native="logout">退出登录</el-dropdown-item> </el-dropdown-menu> </el-dropdown> </el-col> </el-col> <el-col :span="24" class="main"> <aside> <el-menu :default-active="$route.path" class="el-menu-vertical-demo" @open="handleopen" @close="handleclose" @select="handleselect" theme="dark" unique-opened router> <template v-for="(item,index) in $router.options.routes" v-if="!item.hidden"> <el-submenu :index="index+''" v-if="!item.leaf"> <template slot="title"><i :class="item.iconCls"></i>{{item.name}}</template> <el-menu-item v-for="child in item.children" :index="child.path" v-if="!child.hidden">{{child.name}}</el-menu-item> </el-submenu> <el-menu-item v-if="item.leaf&&item.children.length>0" :index="item.children[0].path"><i :class="item.iconCls"></i>{{item.children[0].name}}</el-menu-item> </template> </el-menu> </aside> <section class="content-container"> <p class="grid-content bg-purple-light"> <el-col :span="24" class="breadcrumb-container"> <strong class="title">{{$route.name}}</strong> <el-breadcrumb separator="/" class="breadcrumb-inner"> <el-breadcrumb-item v-for="item in $route.matched"> {{ item.name }} </el-breadcrumb-item> </el-breadcrumb> </el-col> <el-col :span="24" class="content-wrapper"> <transition> <router-view></router-view> </transition> </el-col> </p> </section> </el-col> </el-row> </template> <script> export default{ data() { return { sysUserName:'' } }, methods:{ onSubmit() { console.log('submit!'); }, handleopen() { //console.log('handleopen'); }, handleclose() { //console.log('handleclose'); }, handleselect: function (a, b) { }, //退出登录 logout: function () { var _this = this; this.$confirm('确认退出吗?', '提示', { //type: 'warning' }).then(() => { sessionStorage.removeItem('user'); _this.$router.push('/login'); }).catch(() => { }); } } } </script> <style scoped lang="scss"> .container { position: absolute; top: 0px; bottom: 0px; width: 100%; .header { height: 60px; line-height: 60px; background: #1F2D3D; color: #c0ccda; .userinfo { text-align: right; padding-right: 35px; .userinfo-inner { color: #c0ccda; cursor: pointer; img { width: 40px; height: 40px; border-radius: 20px; margin: 10px 0px 10px 10px; float: right; } } } .logo { font-size: 22px; img { width: 40px; float: left; margin: 10px 10px 10px 18px; } .txt { color: #20a0ff } } } .main { background: #324057; position: absolute; top: 60px; bottom: 0px; overflow: hidden; aside { width: 230px; } .content-container { background: #f1f2f7; position: absolute; right: 0px; top: 0px; bottom: 0px; left: 230px; overflow-y: scroll; padding: 20px; .breadcrumb-container { margin-bottom: 15px; .title { width: 200px; float: left; color: #475669; } .breadcrumb-inner { float: right; } } .content-wrapper { background-color: #fff; box-sizing: border-box; } } } } </style>
(3)App.vue
import Vue from 'vue' import Router from 'vue-router' import App from './App' import routes from './router' import ElementUI from 'element-ui' import 'element-ui/lib/theme-default/index.css' Vue.use(Router) Vue.use(ElementUI) const router = new Router({ routes }); Vue.config.productionTip = false new Vue({ router, render: h => h(App) }).$mount('#app')(5)router.js
import Home from './Home' import classes from './class/classes' import student from './student/student' let router = [ { path: '/', name: '学校', component: Home, redirect: '/classes', iconCls: 'fa fa-id-card-o', children: [ { path: '/classes', component: classes, name: '班级管理' }, { path: '/student', component: student, name: '学生管理' } ] } ]; export default router;
##8. After completion, npm run dev; The interface rendering is as follows:
The above is what I compiled for everyone. I hope it will be helpful to everyone in the future.
Related articles:
How to use puppeteer to crack the sliding verification code of JiExperienceHow to use elementUI to implement in Vue Custom theme method#Bind events to dynamically generated tags in jquery (detailed tutorial)The above is the detailed content of How to build element-ui (detailed tutorial). For more information, please follow other related articles on the PHP Chinese website!

Vue实现文件上传的完整指南(axios、element-ui)在现代Web应用程序中,文件上传已经成为一项基本的功能。无论是上传头像、图片、文档或者视频,我们都需要一个可靠的方法来将文件从用户的计算机上传到服务器中。本文将为您提供一份详细的指南,介绍如何使用Vue、axios和element-ui来实现文件上传。什么是axiosaxios是一个基于prom

如何使用Vue和Element-UI实现日历和日期选择功能简介:在前端开发中,日历和日期选择功能是非常常见的需求之一。Vue和Element-UI是一对非常强大的开发工具,结合它们可以轻松实现日历和日期选择功能。本文将介绍如何使用Vue和Element-UI来创建一个简单的日历和日期选择功能,并提供代码示例,帮助读者了解实现的具体步骤和方法。准备工作:在开始

如何使用Vue和Element-UI实现图片懒加载功能懒加载(Lazyloading)是一种通过延迟加载图片的技术,可以有效提升页面加载速度,节省带宽并改善用户体验。在Vue项目中,我们可以借助Element-UI和一些插件来实现图片懒加载功能。本文将介绍如何使用Vue和Element-UI来实现图片懒加载,并附上相应的代码示例。一、安装必要的依赖在开始之

如何使用Vue和Element-UI实现拖拽排序功能前言:在Web开发中,拖拽排序功能是一项常见且实用的功能。本文将介绍如何使用Vue和Element-UI来实现拖拽排序功能,通过代码示例演示实现过程。一、环境搭建安装Node.js在开始之前,需要安装Node.js。可以访问https://nodejs.org/下载并安装对应操作系统的版本。安装VueCL

如何使用Vue和Element-UI实现消息通知功能随着前端技术的不断发展,越来越多的网站和应用程序需要实现消息通知功能,以便及时向用户展示重要的信息。在Vue开发中,结合Element-UI框架可以快速实现这一功能。本文将详细介绍如何使用Vue和Element-UI来实现消息通知功能,并提供相关的代码示例。一、准备工作在使用Vue和Element-UI实现

如何使用Vue和Element-UI实现多级联动下拉框功能引言:在Web开发中,多级联动下拉框是一种常见的交互方式。通过选择一个下拉框的选项,可以动态改变后续下拉框的内容。本文将介绍如何使用Vue和Element-UI来实现这一功能,并提供代码示例。一、准备工作首先,我们需要确保已经安装好Vue和Element-UI。可以通过以下命令进行安装:npmins

如何使用Vue和Element-UI创建响应式网页界面在Web开发中,响应式设计是一种必不可少的技术。Vue.js和Element-UI是两个非常受欢迎的前端框架,它们都提供了丰富的工具和组件来构建现代化的响应式网页界面。本文将介绍如何使用Vue和Element-UI来创建响应式网页界面,并将通过代码示例来呈现具体的实现过程。首先,我们需要确保已经安装了Vu

如何使用Vue和Element-UI实现数据的筛选和搜索功能在现代Web开发中,数据的筛选和搜索功能是非常常见和重要的需求。Vue和Element-UI是目前非常流行的前端框架,它们提供了很多强大的工具和组件,可以帮助我们轻松实现数据的筛选和搜索功能。本文将介绍如何使用Vue和Element-UI来实现这些功能,并提供详细的代码示例。首先,我们需要准备一个用


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

WebStorm Mac version
Useful JavaScript development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

SublimeText3 Chinese version
Chinese version, very easy to use

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

Dreamweaver Mac version
Visual web development tools
