在網頁應用中,往往需要使用登錄功能。這就需要我們實現一個登錄頁面。為了方便開發,我們可以使用Vue框架來構建這個頁面。
<template> <div class="login"> <form class="login_form"> <h2>用戶登錄</h2> <div class="form-group"> <label for="username">用戶名:</label> <input type="text" id="username" v-model="username" /> </div> <div class="form-group"> <label for="password">密碼:</label> <input type="password" id="password" v-model="password" /> </div> <button type="submit" @click.prevent="login">登錄</button> </form> </div> </template>
上面是Vue登錄頁面的模板代碼。我們可以看到,用到了form、input、button等標簽。其中,v-model指令用于雙向數據綁定,可以實時更新用戶輸入的信息。
除了模板代碼,我們還需要處理業務邏輯。當用戶點擊登錄按鈕時,我們需要向后端發送請求,并驗證用戶輸入的用戶名和密碼是否正確。
<script> export default { data() { return { username: "", password: "" }; }, methods: { login() { const { username, password } = this; //發送ajax請求 this.$http.post("/api/login", { username, password }).then(res =>{ if (res.data.code === 200) { //跳轉到首頁 this.$router.push("/"); } else { //登錄失敗 alert("用戶名或密碼錯誤!"); } }); } } }; </script>
上面是Vue登錄頁面的業務邏輯代碼。我們使用了Vue的響應式數據以及Ajax請求等技術。當用戶點擊登錄按鈕時,執行login函數,向后端發送登錄請求,并根據后端返回的數據決定是否跳轉到首頁。
最后,為了讓Vue能夠正常工作,我們需要進行一些配置。在Vue的入口文件中,我們需要引入Vue Router、Vue Resource等插件,并進行初始化操作。
<script> import Vue from "vue"; import VueRouter from "vue-router"; import VueResource from "vue-resource"; import App from "./App.vue"; import Login from "./views/Login.vue"; import Home from "./views/Home.vue"; //安裝插件 Vue.use(VueRouter); Vue.use(VueResource); //配置路由 const routes = [ { path: "/", component: Home }, { path: "/login", component: Login } ]; const router = new VueRouter({ routes }); //實例化Vue new Vue({ el: "#app", router, render: h =>h(App) }); </script>
上面是Vue的入口文件。我們可以看到,在配置路由時,指定了根路徑和登錄路徑。在實例化Vue時,將路由對象傳入,并渲染根組件App。