当前位置:首页 > 技术分析 > 正文内容

Vue脚手架使用Element UI

ruisui883个月前 (01-16)技术分析18

关于Element UI

Element UI是一套采用 Vue 2.0 作为基础框架实现的组件库,一套为开 发者、设计师和产品经理准备的基于 Vue 2.0 的组件库,提供了配套设计 资源,帮助网站快速成型。

Element UI官方网址是:https://element.eleme.cn/

Element UI预定义了几乎所有标签的常规设计样式,在绝大 部分情况下,你不需要考虑例如按钮的宽度、高度、背景颜色、文本大小、 文本颜色等样式规则,只需要直接使用即可,例如Element UI提供的按 钮:

当然,除了按钮以外,对于表格、表单、表单中各控件、弹出框等常见的 页面元素,Element UI都设计了非常简约美观的样式,例如:

Element UI之所以被称之为“组件库”,是因为它不再使用传统的HTML 标签,而是自行定制了一系列的标签(包括 标签属性),以按钮为例, 其源代码大概是这样的:

<el-button type="primary">主要按钮</el-button>

除了样式以外,Element UI还提 供了便利的表单控件的验证方式, 执行效果例如:

由于Element UI定义了大量的组件,每个组件都有许多属性,所以,学 习Element UI时需要记忆大量的组件特征,这将是一个非常漫长的过程, 通常不建议刻意的死记硬背,应该重点关注Element UI可以做到什么, 例如有哪些样式,各组件的核心属性等用法,然后结合官方文档 (https://element.eleme.cn/#/zh-CN/component/)进行开发。

安装Element UI

  • 首先进入工程文件夹(如果使用IntelliJ IDEA打开了此工程,直接点击 IntelliJ IDEA下面的Terminal即可):
//我的项目是放在这个位置,你们根据自己项目进入工程即可
cd d:/Vue-Workspace/vue-project-02
  • 然后使用npm命令安装Element UI,以下2条命令是等效的(注意:以下 命令区分大小写,例如最后的-S的字母是大写的)
//推荐第一种安装命令
npm i element-ui -S
//或者下面这种写法
npm install --save element-ui
  • 安装完成后,在工程的main.js中导入并使用Element UI:
// main.js  文件配置中加入下面三行
import ElementUI from 'element-ui'; 
import 'element-ui/lib/theme-chalk/index.css'; 
Vue.use(ElementUI);


在页面中显示Element UI组件

1):通过此前的学习,你应该知道有些文件在此工程中是可以不必保留的,应该将这些文件删除,例如:

  • – 删除router/index.js中不必要的配置,

– 删除import HomeView from '../views/HomeView.vue'

– 删除routes常量中各对象(值为空数组即可)

  • – 删除src/components/HelloWorld.vue
  • – 删除src/views/HomeView.vue
  • – 删除src/views/AboutView.vue

2):如果你认为这些页面元素占据了100%宽度,并且默认是靠左对齐的 (当占据100%宽度时你可能看不出来),这样的显示效果不够美观,你可 以自行做一些调整:

//使用你已经掌握的CSS样式进行调整,例如:
<div style="width: 500px; margin: 0 auto;"> <!-- 页面元素 --> </div>
  //学习更多的Element UI的做法,例如:
  <div style="width: 500px; margin: 0 auto;"> 
    <!-- 页面元素 --> 
    </div> 
<el-row type="flex" justify="center"> 
  <el-col :span="12"> 
    <!-- 页面元素 --> 
    </el-col> 
</el-row>

设计登录视图Demo

修改APP.vue页面,代码如下:

<template>
  <div id="app">
    <el-row type="flex" justify="center">
      <el-col :span="8">
        <h3>用户登录</h3>
<el-divider></el-divider>
<el-form :model="ruleForm" status-icon :rules="rules" ref="ruleForm" label-width="100px" class="demo-ruleForm">
  <el-form-item label="用户名" prop="username">
    <el-input v-model="ruleForm.username"></el-input>
</el-form-item>
<el-form-item label="密码" prop="pass">
  <el-input type="password" v-model="ruleForm.pass" autocomplete="off"></el-input>
</el-form-item>
<el-form-item>
    <el-button type="primary" @click="submitForm('ruleForm')">提交</el-button>
<el-button @click="resetForm('ruleForm')">重置</el-button>
</el-form-item>
</el-form>
</el-col>
</el-row>
</div>
</template>

<script>
      export default {
data() {
  var checkUsername = (rule, value, callback) => {
    if (!value) {
      return callback(new Error('用户名不能为空'));
    }
    callback();
  };
  var validatePass = (rule, value, callback) => {
    if (value === '') {
      callback(new Error('请输入密码'));
    }
    callback();
  };
  return {
    ruleForm: {
      pass: '',
      username: ''
    },
    rules: {
      pass: [
        { validator: validatePass, trigger: 'blur' }
      ],
      username: [
        { validator: checkUsername, trigger: 'blur' }
      ]
    }
  };
},
  methods: {
    submitForm(formName) {
      this.$refs[formName].validate((valid) => {
        if (valid) {
          alert('submit!');
        } else {
          console.log('error submit!!');
          return false;
        }
      });
    },
      resetForm(formName) {
        this.$refs[formName].resetFields();
      }
  }
}
  </script>

学习记录,如有侵权请联系删除

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/334.html

分享给朋友:

“Vue脚手架使用Element UI” 的相关文章

Linux发行版Debian推出12.2及11.8版本,修复多个安全问题

IT之家 10 月 9 日消息,Debian 是最古老的 GNU / Linux 发行版之一,也是许多其他基于 Linux 的操作系统的基础,包括 Ubuntu、Kali、MX 和树莓派 OS 等,近日 Debian 推出了 12.2 和 11.8 版本,主要修复了多个安全问题。▲ 图源 Debia...

2024前端面试真题之—VUE篇

添加图片注释,不超过 140 字(可选)1.vue的生命周期有哪些及每个生命周期做了什么? beforeCreate是new Vue()之后触发的第一个钩子,在当前阶段data、methods、computed以及watch上的数据和方法都不能被访问。 created在实例创建完成后发生,当前阶段已...

vue项目-父页面数据变化使子页面更新的几种情况

当操作页面时候,特别是增删改操作之后,数据会有所改变,这个时候我们希望组件中的数据要和最新数据一致,就需要重新更新渲染。以下是针对几种不同情况下方式:一.子页面调用接口后重新渲染1.使用ref方式父组件中用ref=“xxx” 来声明子组件,然后通过在父组件值改变的地方来调用子组件中的方法this.$...

10个实例小练习,快速入门熟练 Vue3 核心新特性(一)

作者:xuying 全栈修炼转发链接:https://mp.weixin.qq.com/s/_n2seDbbiO5hXQfuUGbUCQ前言Vue3.0 发 beta 版都有一段时间了,正式版也不远了,所以真的要学习一下 Vue3.0 的语法了。本篇文章总共分两部分,望小伙伴们认真阅读。下一篇:10...

Java教程:gitlab-使用入门

1 导读本教程主要讲解了GitLab在项目的环境搭建和基本的使用,可以帮助大家在企业中能够自主搭建GitLab服务,并且可以GitLab中的组、权限、项目自主操作GitLab简介GitLab环境搭建GitLab基本使用(组、权限、用户、项目)2 GitLab简介GitLab是整个DevOps生命周期...

内存问题探微

这篇文章是我在公司 TechDay 上分享的内容的文字实录版,本来不想写这么一篇冗长的文章,因为有不少的同学问是否能写一篇相关的文字版,本来没有的也就有了。说起来这是我第二次在 TechDay 上做的分享,四年前第一届 TechDay 不知天高地厚,上去讲了一个《MySQL 最佳实践》,现在想起来那...