VUE全面总结【项目篇】

简介: VUE全面总结【项目篇】

前言:学习vue就是为了在实际开发中解决问题。而解决问题最重要的就是解决思路,这篇文章会提出一系列的问题,然后利用所学知识给出答案。

第一节 登录注册页


问题1:如何做一个完整的登录注册页面?

答:第一步:创建组件-->配置路由-->测试跳转是否成功-->布局结构-->调整样式-->基础静态页面搭建完成。

      第二步:实现功能:表单校验(前端得做)-->调接口发请求-->根据后台反馈结果,给出提示

问题2:你认为在这个功能模块中,哪里最重要?

答:发送请求后,如登陆成功。后台发回来的token需要保存,因为后续开发的许多功能模块都需要使用到token。

问题3:你是怎么保存的?

答:通过vuex保存的,同时也保存到了本地存储中。

首先,在vuex的actions函数里,发送请求。接着将获取到的token值,通过context.commit()传给mutations,让mutations去保存token。因为只有mutations可以修改state里面的值,将token存到vuex好处是所有的组件都可以通过this.$store.state.token 拿到token的值。localStorage  setItem保存到本地。用getItem()取值。

问题4 为什么要这么麻烦,还要存到本地?

答:vuex保存的数据是存到内存里面,页面一刷新数据就没了。而存到本地时效性变的相对长,但是本地存储不是响应式的,而vuex是响应式的,所以利用他们的优点。

问题5 那登录成功之后怎么跳转?

答:分两种情况。第一种就是正常登录,可以使用编程式跳转this.$router.push('/xx')

还有一种情况,就是用户访问了某些需要权限的页面,被跳转到了登录页,这个时候就需要跳转到用户来之前的页面,我们可以从query里面取值。this.$router.push(this.$router.query.backto || '/') 就是说有backto就用没有就去主页

问题6 如果用户登陆了,那么它访问需要token权限的页面(请求需要带token),你是怎么处理的?

答:我可以在这次请求中,将token的值从state中取出来,给请求

我会封装一个请求拦截器,每次发送请求的时候,将token发给后台。

问题6 怎么处理 非登陆用户去访问敏感页面?

首先,用户没有权限是不能访问需要权限的页面的。应该让他去登录页。

利用路由守卫(前置路由守卫),为了更好的用户体验,我们应该记住用户之前所在的页面,以便用户登录之后,跳转到之前的页面 。因此,我们需要在跳转到登录页前传入要返回的地址

next('/xxx?backto=' + to.fullPath)   而用户登录成功后,会根据传回来的地址跳转过去利用

this.$router.push(this.$router.query.backto || '/首页' ) 如果没有的话跳首页

待更新…

第二节  布局问题(UI组件、二级路由)


问题1 :使用了哪些第三方UI库

问题2 :

第三节 封装问题


问题1 :什么时候封装?

问题2 :封装了哪些?

问题3 :封装的流程?

第四节 axios请求问题


问题1 :传参


相关文章
|
1天前
|
存储 JavaScript 开发者
Vue 组件间通信的最佳实践
本文总结了 Vue.js 中组件间通信的多种方法,包括 props、事件、Vuex 状态管理等,帮助开发者选择最适合项目需求的通信方式,提高开发效率和代码可维护性。
|
1天前
|
存储 JavaScript
Vue 组件间如何通信
Vue组件间通信是指在Vue应用中,不同组件之间传递数据和事件的方法。常用的方式有:props、自定义事件、$emit、$attrs、$refs、provide/inject、Vuex等。掌握这些方法可以实现父子组件、兄弟组件及跨级组件间的高效通信。
|
6天前
|
JavaScript
Vue基础知识总结 4:vue组件化开发
Vue基础知识总结 4:vue组件化开发
|
6天前
|
存储 JavaScript
Vue 状态管理工具vuex
Vue 状态管理工具vuex
|
13天前
|
缓存 JavaScript UED
Vue 中实现组件的懒加载
【10月更文挑战第23天】组件的懒加载是 Vue 应用中提高性能的重要手段之一。通过合理运用动态导入、路由配置等方式,可以实现组件的按需加载,减少资源浪费,提高应用的响应速度和用户体验。在实际应用中,需要根据具体情况选择合适的懒加载方式,并结合性能优化的其他措施,以打造更高效、更优质的 Vue 应用。
|
12天前
|
JavaScript
如何在 Vue 中使用具名插槽
【10月更文挑战第25天】通过使用具名插槽,你可以更好地组织和定制组件的模板结构,使组件更具灵活性和可复用性。同时,具名插槽也有助于提高代码的可读性和可维护性。
15 2
|
12天前
|
JavaScript
Vue 中的插槽
【10月更文挑战第25天】插槽的使用可以大大提高组件的复用性和灵活性,使你能够根据具体需求在组件中插入不同的内容,同时保持组件的结构和样式的一致性。
14 2
|
12天前
|
前端开发 JavaScript 容器
在 vite+vue 中使用@originjs/vite-plugin-federation 模块联邦
【10月更文挑战第25天】模块联邦是一种强大的技术,它允许将不同的微前端模块组合在一起,形成一个统一的应用。在 vite+vue 项目中,使用@originjs/vite-plugin-federation 模块联邦可以实现高效的模块共享和组合。通过本文的介绍,相信你已经了解了如何在 vite+vue 项目中使用@originjs/vite-plugin-federation 模块联邦,包括安装、配置和使用等方面。在实际开发中,你可以根据自己的需求和项目的特点,灵活地使用模块联邦,提高项目的可维护性和扩展性。
|
13天前
Vue3 项目的 setup 函数
【10月更文挑战第23天】setup` 函数是 Vue3 中非常重要的一个概念,掌握它的使用方法对于开发高效、灵活的 Vue3 组件至关重要。通过不断的实践和探索,你将能够更好地利用 `setup` 函数来构建优秀的 Vue3 项目。
|
13天前
|
缓存 JavaScript UED
Vue 中异步加载模块的方式
【10月更文挑战第23天】这些异步加载模块的方式各有特点和适用场景,可以根据项目的需求和架构选择合适的方法来实现模块的异步加载,以提高应用的性能和用户体验