欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

一文教會(huì)你快速上手vue的登錄界面(最新版)

 更新時(shí)間:2022年11月21日 08:34:58   作者:呼啦啦呼啦啦啦啦啦啦  
幾乎每個(gè)項(xiàng)目都會(huì)使用登錄頁(yè)面,這篇文章主要給大家介紹了如何通過(guò)一文教會(huì)你快速上手vue的登錄界面,文中通過(guò)實(shí)例代碼介紹的很詳細(xì),需要的朋友可以參考下

這是一個(gè)非常非常適合新手的vue登錄界面,總體來(lái)說(shuō)美觀大氣,axios那部分沒(méi)有發(fā),有需要的大家可以自己進(jìn)行二次開(kāi)發(fā),繼續(xù)編寫(xiě)。

用到了技術(shù)棧有

vue/cli 5.07 + element-ui 2.15.9

適合入門(mén)級(jí)新手,展示下頁(yè)面


emmm驗(yàn)證碼,什么的可以等有興趣的人二次開(kāi)發(fā)

好下面來(lái)講述具體如何來(lái)實(shí)現(xiàn)這個(gè)頁(yè)面。

一、創(chuàng)建vue項(xiàng)目

使用vue的腳手架創(chuàng)建項(xiàng)目,然后把不需要的內(nèi)容刪去,可以看到頁(yè)面如下:

需要注意的是你創(chuàng)建時(shí)候需要去勾選router選項(xiàng),如果不勾選的話未來(lái)會(huì)很麻煩,需要自己重新配置下載,如何創(chuàng)建vue項(xiàng)目,可以翻找我的博文,我的博文里面有記載。

二、引入依賴

把需要的依賴引入,這里我不打算講太深,就是很簡(jiǎn)單的把element-ui依賴下載
具體怎么下載打開(kāi)terminal,輸入指令npm install element-ui -S就可以下載,下載完可以在package.json可以看到

我這里有個(gè)axios不用在意,因?yàn)槲覍?shí)現(xiàn)了前后端互聯(lián),所以對(duì)于基礎(chǔ)功能而言這些是不需要注意的

三、改造下項(xiàng)目

app.vue改造成如下樣式

router下的index.js需要改變下,因?yàn)樾碌捻?yè)面為L(zhǎng)ogin.vue

在assets下加入名為background的圖片,圖片已取出放在下面了

對(duì)了差點(diǎn)忘了要改一下main.js

代碼如下:

import Vue from "vue";
import router from "./router";
import ElementUI from 'element-ui';
import App from './App.vue';
import 'element-ui/lib/theme-chalk/index.css';

Vue.use(ElementUI);
Vue.config.productionTip = false;

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

還有就是駝峰法則查的很?chē)?yán),

要在vue.config.js上

控制下擺脫這東西,

代碼如下:

const { defineConfig } = require(“@vue/cli-service”);
module.exports = defineConfig({<!--{cke_protected}{C}%3C!%2D%2D%20%2D%2D%3E-->
transpileDependencies: true,
lintOnSave: false,
});

四、寫(xiě)入Login視圖

在views下創(chuàng)建Login.vue

代碼如下:

<template>
    <div>
  <el-form :rules="rules" ref="loginForm" :model="loginForm" class="loginContainer">
     <h3 class="loginTitle">
       系統(tǒng)登錄
     </h3>
      <el-form-item prop="username">
          <el-input type="text" v-model="loginForm.username" placeholder="親,請(qǐng)輸入用戶名" >
          </el-input>
      </el-form-item>
      <el-form-item prop="password">
          <el-input type="password" v-model="loginForm.password" placeholder="親,請(qǐng)輸入密碼" >
          </el-input>
      </el-form-item>
      <el-form-item prop="code">
          <el-input type="text" auto-complete="false" v-model="loginForm.code" placeholder="點(diǎn)擊圖片更換驗(yàn)證碼" style="width: 250px;margin-right: 5px">
          </el-input>
          <img :src="captchaUrl">

      </el-form-item>
      <el-checkbox v-model="checked" class="loginRemember">記住我</el-checkbox>
      <el-button type="primary" style="width:100%" @click="submitLogin">登錄</el-button>
  </el-form>
    </div>
</template>

<script>
export default {
  name: "Login",
    data(){
      return{
          captchaUrl: "",
          loginForm:{
              username:"admin",
              password:"ssssss",
              code:''
          },
          checked: true,
          rules:{
              username:[{required:true,message:"請(qǐng)輸入用戶名",trigger:"blur"},{ min: 5, max: 14, message: '長(zhǎng)度在 5 到 14 個(gè)字符', trigger: 'blur' }
              ],
              password:[{required:true,message:"請(qǐng)輸入密碼",trigger:"blur"},,{ min: 6,  message: '密碼長(zhǎng)度要大于6', trigger: 'blur' }],
              code:[{required:true,message:"請(qǐng)輸入驗(yàn)證碼",trigger:"blur"}],
          }

      }
  },
    methods:{
      submitLogin(){
          this.$refs.loginForm.validate((valid) => {
              if (valid) {
                  alert('提交成功');
              } else {
                  this.$message.error('登錄出錯(cuò)請(qǐng)重新輸入');
                  return false;
              }
          });
      }
    }
};
</script>

<style lang="less" scoped>
    .loginContainer{
        border-radius: 15px;
        background-clip: padding-box;
        margin: 180px auto;
        width: 350px;
        padding: 15px 35px 15px 35px;
        background: aliceblue;
        border:1px solid blueviolet;
        box-shadow: 0 0 25px #f885ff;
    }
    .loginTitle{
        margin: 0px auto 48px auto;
        text-align: center;
        font-size: 40px;
    }
    .loginRemember{
        text-align: left;
        margin: 0px 0px 15px 0px;
    }
    body{
        background-image: url("../assets/background.jpg") ;
        background-size:100%;
    }
</style>

然后細(xì)細(xì)講解下代碼

style中主要控制登錄框的位置,以及如何去設(shè)計(jì),body那里樣式是設(shè)計(jì)的全局背景圖,rules:設(shè)置了檢驗(yàn)規(guī)則避免無(wú)效登錄,設(shè)置成一失去焦點(diǎn)就會(huì)繼續(xù)檢查,checked保證了登錄功能后續(xù)開(kāi)發(fā),巴拉巴拉一大堆但是很容易懂。

總結(jié)

然后希望這篇文章能夠幫助到你,快速掌握vue。也感謝有大佬提出意見(jiàn),頁(yè)面樣式一定要設(shè)置scoped,否則會(huì)影響后續(xù)的所有頁(yè)面樣式,二次開(kāi)發(fā)要注意希望大家引以為戒

到此這篇關(guān)于快速上手vue的登錄界面的文章就介紹到這了,更多相關(guān)vue登錄界面內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論