vue+element-ui

news2025/2/25 11:13:05

一.使用图形化界面,创建vue项目

vue ui(在根目录下,打开cmd,启动图形化界面)

 添加插件

 添加element-ui插件

 这里选择import on demand

 安装好了

 添加依赖

 添加axios依赖

 添加好了

二.创建Git仓库,连接并上传刚刚创建的项目

 在项目文件目录下打开git的命令窗口,git bash here

 查看状态git status,发现有很多文件没有加入暂存区,

 然后将这些文件加入暂存区,git add .

 与远程仓库建立连接,然后将项目推送到仓库

 这样,创建的项目就与远程仓库建立连接并推送成功了

 三.用idea打开刚刚的项目

在终端用命令创建一个login分支

创建分支之后,去启动项目

 项目启动成功

如果很多文件颜色都是灰色的,那需要按照提示,安装所提示的东西

修改 

 那么首页那些花花绿绿的就没有了,这个文件已修改,页面就会有效果

 然后去修改路由

一开始这样:

 修改后:

 删掉组件下面自带的文件,新建一个Login.vue文件,我们登录页面的内容就写在这个文件里面        

login.vue文件建好之后,我们要在index.js文件当中,配置好login.vue的路        由

不要忘了App.vue里面还有个路由显示出口,出口你都不写,页面怎么显示效果

 

然后我们现在就开始在Login.vue这个文件里面写我们需要的内容

首先我们去设置全局的css样式

 然后将他引入到main.js这个文件中

这个文件就是你后续需要用到什么依赖啊啥的,就要引入到这个文件中

less有什么用

  less报错,是因为缺少依赖,那么要去安装两个依赖

 

 

 

 然后页面就显示了

 在assets这个包下面建一个css目录,再建一个

最终登录的界面效果

<template>
  <div class="login_container">
    <!--登录的组件{{msg}}-->
    <div class="login_box">
      <div class="tp_box">
        <img src="../assets/images/login.png" width="80px" alt="">
      </div>
      <el-form label-width="0" class="login_form">
        <el-form-item>
          <el-input placeholder="请输入用户名"></el-input>
        </el-form-item>
        <el-form-item>
          <el-input placeholder="请输入密码"></el-input>
        </el-form-item>
        <el-form-item class="btns">
          <el-button type="primary">登录</el-button>
          <el-button type="info">取消</el-button>
        </el-form-item>
      </el-form>
    </div>
  </div>
</template>

<script>
export default {
  // eslint-disable-next-line vue/multi-word-component-names
  name: 'Login',
  data: function () {
    return {
      msg: 'zsf'
    }
  }

}
</script>
<!--这个less有什么用-->
<style lang="less" scoped>
.login_container {
  //background-color: #d4edda;
  background-color: powderblue;
  background-image: linear-gradient(to right,powderblue,deepskyblue);
  height: 100%;
}
.login_box{
  width: 450px;
  height: 450px;
  //background-color: antiquewhite;
  background-color: white;
  border-radius: 15%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  box-shadow: 0 0 10px powderblue;/*加阴影*/

  .tp_box{
    position: fixed;
    left: 50%;
    transform: translate(-50%);
    border-radius: 50%;/*圆角*/
    background-color:powderblue;
    width: 120px;
    height: 120px;
    padding: 10px;
    box-shadow: 0 5px 20px deepskyblue;/*加阴影*/
    img{
      width: 100%;
      height: 100%;
      border-radius: 50%;
    }
  }
}
.btns{
  display: flex;
  justify-content: flex-end;
}
.login_form{
  position: absolute;
  left: 50%;
  transform: translate(-50%);
  bottom: 60px;
  width: 90%;
  padding: 0px 20px;
  /*就算你要撑起来,你也只能往里面撑起来*/
  box-sizing: border-box;
}
</style>

另一个样式

加上表单验证并实现重置

<template>
  <div class="login_container">
    <!--登录的组件{{msg}}-->
    <div class="login_box">
      <div class="tp_box">
        <img src="../assets/images/login.png" width="80px" alt="">
      </div>
      <el-form ref="loginFormRef" :model="loginForm" :rules="loginFormRules" label-width="0" class="login_form">
        <!--prop="username:指定要执行的规则"-->
        <el-form-item prop="username">
          <el-input v-model="loginForm.username" prefix-icon="iconfont icon-yonghu" placeholder="请输入用户名"></el-input>
        </el-form-item>
        <el-form-item prop="password">
          <el-input v-model="loginForm.password" prefix-icon="iconfont icon-suoding" placeholder="请输入密码"></el-input>
        </el-form-item>
        <el-form-item class="btns">
          <el-button type="primary">登录</el-button>
          <el-button type="info" @click="resetLoginForm">取消</el-button>
        </el-form-item>
      </el-form>
    </div>
  </div>
</template>

<script>
export default {
  // eslint-disable-next-line vue/multi-word-component-names
  name: 'Login',
  data () {
    return {
      loginForm: {
        username: '',
        password: ''
      },
      loginFormRules: {
        username: [
          /* blur:失去焦点的时候触发 */
          {
            required: true,
            message: '请输入用户名',
            trigger: 'blur'
          },
          {
            min: 6,
            max: 9,
            message: '长度在 6 到 9 个字符',
            trigger: 'blur'
          }
        ],
        password: [
          /* blur:失去焦点的时候触发 */
          {
            required: true,
            message: '请输入密码',
            trigger: 'blur'
          },
          {
            min: 6,
            max: 9,
            message: '长度在 6 到 9 个字符',
            trigger: 'blur'
          }
        ]
      }
    }
  },
  methods: {
    resetLoginForm () {
      console.log(this)
      this.$refs.loginFormRef.resetFields()
    }
  }

}
</script>
<!--这个less有什么用-->
<style lang="less" scoped>
.login_container {
  //background-color: #d4edda;
  background-color: powderblue;
  //background-image: linear-gradient(to right,powderblue,deepskyblue);
  background-image: linear-gradient(to right, powderblue, pink, plum);
  height: 100%;
}

.login_box {
  width: 450px;
  height: 450px;
  //background-color: antiquewhite;
  background-color: white;
  border-radius: 15%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  box-shadow: 0 0 10px powderblue; /*加阴影*/

  .tp_box {
    position: fixed;
    left: 50%;
    transform: translate(-50%);
    border-radius: 50%; /*圆角*/
    background-color: powderblue;
    width: 120px;
    height: 120px;
    padding: 10px;
    box-shadow: 0 5px 20px deepskyblue; /*加阴影*/

    img {
      width: 100%;
      height: 100%;
      border-radius: 50%;
    }
  }
}

.btns {
  display: flex;
  justify-content: flex-end;
}

.login_form {
  position: absolute;
  left: 50%;
  transform: translate(-50%);
  bottom: 60px;
  width: 90%;
  padding: 0px 20px;
  /*就算你要撑起来,你也只能往里面撑起来*/
  box-sizing: border-box;
}

</style>

再用一下阿里巴巴的图标库

 https://www.iconfont.cn/
小俊会编码:..123123

下载好之后,将压缩包解压,将文件夹加入到项目assets目录下

 在表单输入框当中使用

 

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

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

相关文章

基于微信小程序的电影订票系统设计与实现(代码+数据库+论文)

项目简介 本系统是基于微信小程序的电影订票系统的设计与实现。基于B/S架构模式进行设计&#xff0c;使用了JavaScript、CSS、java语言等&#xff0c;后台数据库设计使用Mysql。本电影订票系统主要分为前端小程序订票系统和后台电影管理两部分。用户使用时接触的是系统前端小程…

学习Canvas基础-绘制矩形

学习Canvas基础-绘制矩形 canvas提供了三个API&#xff0c;分别是&#xff1a; 1.绘制矩形 rect(起点X, 起点Y, 绘制的矩形width, 绘制的矩形height) 但该方法不会出实际效果&#xff0c;需要配合 fill&#xff08;&#xff09;和stroke&#xff08;&#xff09;方法让其显现…

深入理解CSS之flex精要之 flex-basis flex-grow flex-shrink 实战讲解

这篇文章对flex不熟也可以看。这篇文章只讲这三个属性。为了简单化&#xff0c;不会提到主轴交叉轴&#xff0c;也不讲方向&#xff0c;默认方向就是水平方向从左往右。但并不影响对这三个概念的理解。 如果你觉得对flex比较了解&#xff0c;可以直接从第二小节开始看起。 1.…

window.print() 前端页面打印与预览PDF

window.print()打印是浏览器自带的打印&#xff0c;实现原理是将html转换为pdf可以在线预览打印或者导出pdf&#xff0c;在任何网页上可通过Ctilp快捷键调出浏览器打印程序&#xff0c;它可将整个网页打印出来&#xff0c;在我们开发中&#xff0c;其实并不需要将所有页面打印出…

js调用gpt3.5

参考链接&#xff1a;直接在前端调用 GPT-3 API 效果图&#xff1a; 小技巧&#xff1a; 1. shiftenter是发送消息的快捷键 2. 有本地聊天记录功能 3. 按delete按钮可以删除包括这条之后的记录 <!DOCTYPE html> <html><head><meta charset"UTF-8&…

前端插件库之vue3使用vue-codemirror插件

vue3插件vue-codemirror使用步骤和实例vue-codemirror使用配置说明:个人代码编辑区Demovue-codemirror 基于 CodeMirror &#xff0c;适用于 Vue 的 Web 代码编辑器。 使用 1.命令行安装 npm install vue-codemirror --save // cnpm install vue-codemirror --save如果运行…

vue3使用viewer

介绍 v-viewer是一款基于viewer.js的强大的插件&#xff0c;不但支持vue3版本&#xff0c;还支持vue2、JavaScript、jquery&#xff0c;有以下特点&#xff1a; 支持移动设备触摸事件支持响应式支持放大/缩小支持旋转&#xff08;类似微博的图片旋转&#xff09;支持水平/垂直…

idea / eclipse 配置 Tomcat 并发布 Web 项目

文章目录tomcat 安装配置简介下载安装系统环境配置优化配置修改默认内存管理员用户名和密码设置支持中文文件名称idea 配置 tomcat 并发布 web 项目项目创建为项目添加 tomcat发布测试eclipse 配置 tomcat 并发布 web 项目引入 tomcat建立 web 项目发布测试总结本篇内容主要讲述…

python Web开发 flask轻量级Web框架实战项目--实现功能--账号密码登录界面(连接数据库Mysql)

ps&#xff1a;各位好久不见&#xff0c;我回家了&#xff01;终于有时间把之前的一些东西整理一下了&#xff08;好吧&#xff0c;之前是我太懒了&#xff09;&#xff0c;今天分享一个功能简单的python web实战项目&#xff0c;后期功能可自行丰富。 先看效果 输入正确用户名…

猿创征文|【C++游戏引擎Easy2D】我拿吃零食的时间,学会了在C++上添加可点击按钮

&#x1f9db;‍♂️iecne个人主页&#xff1a;&#xff1a;iecne的学习日志 &#x1f4a1;每天关注iecne的作品&#xff0c;一起进步 &#x1f4aa;学C必看iecne 本文专栏&#xff1a;【C游戏引擎】. &#x1f433;希望大家多多支持&#x1f970;一起进步呀&#xff01; ✨前…

vuex报错:Property or method “$store“ is not defined on the instance but referenced during render. Make

‘store’ is defined but never used no-unused-vars 最近在写vuex&#xff0c;报过一个这样的错误&#xff1a; Property or method “$store” is not defined on the instance but referenced during render. Make sure that this property is reactive, either in the da…

结合表单验证谈el-form中model、prop、rules属性

目录前言modelproprules验证总结前言 最近写vue项目需要用element ui中的表单组件显示一些信息呈现在页面上&#xff0c;但在使用提供的一些属性时有些困惑——这三者之间有什么关系&#xff0c;必须要同时存在吗&#xff1f;于是在这里做一些记录。 model 官方说是表单中的数…

flex布局中使用flex-wrap实现换行

最近做个项目,其中有个样式是换行布局,作为样式渣渣的我一开始不会,只能查资料,然后摆平了它.今天得空了,简要记录一下,方便后面小伙伴布局使用. 参考资料 flex-wrap 开始样式 <div class"planWrap"><div class"content planItem">1</div…

vue 父传子 子传父实现方式

父传子&#xff1a; 主要步骤&#xff1a; 首先在子组件props中创建一个属性&#xff0c;用以接收父组件传过来的值&#xff1b;然后父组件中引用子组件&#xff0c;并在子组件标签中添加子组件props中创建的属性&#xff1b;最后把需要传给子组件的值赋给该属性。 理解&#…

Vue父子组件生命周期执行顺序

要想弄懂Vue父子组件的生命周期执行顺序&#xff0c;首先要知道vue页面的生命周期钩子函数的执行顺序&#xff0c;这也是在面试中老生常谈的问题&#xff0c;同时相信大家在工作的时候也能经常碰到父子组件加载上的问题&#xff0c;所以&#xff0c;不管是面试还是工作&#xf…

前端常见的时间转换方法合集+动态时钟效果实现

1.将时间戳转换为YYYY-MM-DD HH:mm:ss格式-老方法 通过对应的年月日时分秒依次进行拼接&#xff0c;另外还需要对小于10的值进行处理&#xff0c;在前面添加字符串‘0’&#xff0c;转换为常见的两位数时间格式 function transformTime(timestamp new Date()) { if (time…

Vue实现生成二维码

目 录 ①首先创建一个vue项目 ②引入qrcodejs2 ③封装组件 1. 创建Vue文件 2. 定义template模板 3. 引入QRCode包 4. 进行封装 5. less控制样式 ④启动项目 1. 在终端输入启动项目命令 2. 在浏览器中输入访问地址 3. 访问生成的二维码 4. 扫码进行解析 与后端用J…

CSS实现文字描边效果

一、介绍 最近在一个项目的宣传页中&#xff0c;设计师使用了文字描边效果&#xff0c;之前我确实没有实现过文字的描边效果&#xff0c;然后我在查阅资料后&#xff0c;知道了实现方法。文字描边分为两种&#xff1a;内外双描边和单外描边&#xff0c;也就是指在给文字加上描…

ElementPlus DateTimePicker日期时间选择器限制可选时间范围(精确时分秒)

项目场景 ElementPlus DateTimePicker日期时间选择器 当我们使用日期时间选择器时&#xff0c;可能会有需求只能选择今日之前或者今日之后&#xff0c;又或者一周内&#xff0c;一个月内的时间&#xff0c;而其他的时间应该禁止被用户选择。 解决 直接看文档&#xff1a; …

【element】el-autocomplete的常见用法

前言&#xff1a; 这段时间突然发现很少写博客了&#xff0c;平时都在平衡工作和休息的时间&#xff0c;周末也没动过笔&#xff0c;而且更重要的是我找不到写的内容了&#xff0c;在经历的初始的新知识的学习阶段后&#xff0c;目前的阶段更加转入对于业务的理解&#xff0c;…