学生信息管理系统 —— 前端篇

学生信息管理系统 —— 前端篇

码农世界 2024-05-28 前端 96 次浏览 0个评论

├── Home.vue

└── Login.vue

……

└── vue.config.js (与src同级的配置文件)

单文件组件结构


举一个简单的例子。

反向代理配置


在vue.config.js文件下

module.exports={

devServer:{

proxy:{

“/api”:{

target:‘http://localhost:8088’,//访问的服务器地址

changeOrigin:true,//true为开启代理

//secure: true, // 如果是https接口,需要配置这个参数

pathRewrite:{

‘^/api’: ‘’//路径的替换规则

/*

*这里的配置是正则表达式,以/api开头的路径将会被‘/'替换掉

*假如后台文档的接口是 “https://www.cyclv.com/admin/login”

*前端调取API接口应写:axios.get(‘/api/admin/login’)

*/

}

}

}

}

}

axios


在api.js下简单封装了与后端交互的代码,主要考虑到如果以后交互技术的变化以方便拓展。

import axios from ‘axios’

export const postRequest = (url,data) => {

return axios.post(url,data);

}

export const getRequest = (url)=> {

return axios.get(url);

}

export const deleteRequest = (url)=> {

return axios.delete(url);

}

export const putRequest = (url,data)=> {

return axios.put(url,data);

}

具体代码片段,如:

const api = ‘api/login’;

postRequest(api, {

aid: this.loginForm.aid,

pwd: this.loginForm.pwd

})

.then(response => {

if (response.status == 201) {

// 在 store 的 state存储 状态

this.$store.commit(‘login’, this.loginForm);

this.$router.replace({path: ‘/home’});

} else {

alert(“密码错误!”);

}

})

.catch(res => {

this.console.log(“内部错误”);

})

路由


//import …………

Vue.use(VueRouter)

const routes = [

{

path:‘/login’,

name:‘Login’,

component:Login

},

{

path: ‘/home’,

name:‘Home’,

component: Home,

meta:{

// 表明页面需要进行拦截

requiredAuth: true

},

children :[

{

path: ‘display-students’,

name: ‘DisplayStudent’,

component:DisplayStudent

},

{

path: ‘add-students’,

name: ‘AddStudents’,

component: AddStudents

},

{

path: ‘display-courses’,

name: ‘DisplayCourses’,

component: DisplayCourses

},

{

path: ‘add-courses’,

name: ‘AddCourses’,

component: AddCourses

},

{

path: ‘add-achievement’,

name: ‘AddAchievement’,

component: AddAchievement

},

{

path: ‘display-achievement’,

name: ‘DisplayAchievement’,

component: DisplayAchievement

},

{

path: ‘add-score’,

name: ‘AddScore’,

component: AddScore

},

{

path: ‘display-score’,

name: ‘DisplayScore’,

component: DisplayScore

}

]

},

{

path: ‘*’,

redirect:‘/login’

}

]

const router = new VueRouter({

routes

})

export default router

store


这里只是简单的使用store技术,用于存储一些全局的状态。

这里存储了用户的登录状态。

import Vue from ‘vue’

import Vuex from ‘vuex’

Vue.use(Vuex)

/*

sessionStorage 只有关闭页面、退出浏览器才会清除

localStorage 除非只有主动清除,否则不会清除

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数前端工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Web前端开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(资料价值较高,非无偿)

最后

给大家分享一些关于HTML的面试题,有需要的朋友可以戳这里获取,先到先得哦。

…(img-0Waj37rq-1711767523647)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上前端开发知识点,真正体系化!

[外链图片转存中…(img-9J2dqe4F-1711767523648)]

由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!

如果你觉得这些内容对你有帮助,可以扫码获取!!(资料价值较高,非无偿)

最后

给大家分享一些关于HTML的面试题,有需要的朋友可以戳这里获取,先到先得哦。

[外链图片转存中…(img-7rX9rfqf-1711767523648)]

[外链图片转存中…(img-JEyRJ4If-1711767523649)]

转载请注明来自码农世界,本文标题:《学生信息管理系统 —— 前端篇》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,96人围观)参与讨论

还没有评论,来说两句吧...

Top