一文教會(huì)你快速上手vue的登錄界面(最新版)
這是一個(gè)非常非常適合新手的vue登錄界面,總體來(lái)說(shuō)美觀大氣,axios那部分沒有發(fā),有需要的大家可以自己進(jìn)行二次開發(fā),繼續(xù)編寫。
用到了技術(shù)棧有
vue/cli 5.07 + element-ui 2.15.9
適合入門級(jí)新手,展示下頁(yè)面

emmm驗(yàn)證碼,什么的可以等有興趣的人二次開發(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依賴下載
具體怎么下載打開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");
還有就是駝峰法則查的很嚴(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,
});四、寫入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ù)開發(fā),巴拉巴拉一大堆但是很容易懂。
總結(jié)
然后希望這篇文章能夠幫助到你,快速掌握vue。也感謝有大佬提出意見,頁(yè)面樣式一定要設(shè)置scoped,否則會(huì)影響后續(xù)的所有頁(yè)面樣式,二次開發(fā)要注意希望大家引以為戒
到此這篇關(guān)于快速上手vue的登錄界面的文章就介紹到這了,更多相關(guān)vue登錄界面內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
為vue項(xiàng)目自動(dòng)設(shè)置請(qǐng)求狀態(tài)的配置方法
這篇文章主要介紹了vue項(xiàng)目自動(dòng)設(shè)置請(qǐng)求狀態(tài)的配置方法,本文通過(guò)示例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06
一起寫一個(gè)即插即用的Vue Loading插件實(shí)現(xiàn)
這篇文章主要介紹了一起寫一個(gè)即插即用的Vue Loading插件實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-10-10
Vue-cli中post請(qǐng)求發(fā)送Json格式數(shù)據(jù)方式
這篇文章主要介紹了Vue-cli中post請(qǐng)求發(fā)送Json格式數(shù)據(jù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-04-04
如何在 Vue 中使用 Axios 異步請(qǐng)求API
Axios 是 Javascript 中最受歡迎的 HTTP 庫(kù)之一,我們可以用它在 Vue 程序中調(diào)用API。在本文中我們用 Vue 3 和 Axios 寫一個(gè)侃爺語(yǔ)錄小應(yīng)用,可以用這個(gè)小程序?qū)W習(xí)英語(yǔ),同時(shí)也能從侃爺?shù)脑捴械玫揭恍﹩l(fā),而且還可以學(xué)習(xí)用 Vue 異步請(qǐng)求API,一舉多得,何樂而不為呢?2021-05-05
Vue組件Draggable實(shí)現(xiàn)拖拽功能
這篇文章主要為大家詳細(xì)介紹了Vue組件Draggable實(shí)現(xiàn)拖拽功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12
Vue中插槽slot的使用方法與應(yīng)用場(chǎng)景詳析
這篇文章主要給大家介紹了關(guān)于Vue中插槽slot的使用方法與應(yīng)用場(chǎng)景的相關(guān)資料,插槽(Slot)是Vue提出來(lái)的一個(gè)概念,正如名字一樣,插槽用于決定將所攜帶的內(nèi)容,插入到指定的某個(gè)位置,從而使模板分塊,具有模塊化的特質(zhì)和更大的重用性,需要的朋友可以參考下2021-06-06
關(guān)于vue 項(xiàng)目中瀏覽器跨域的配置問(wèn)題
這篇文章主要介紹了vue 項(xiàng)目中瀏覽器跨域的配置問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-11-11

