当前位置: 首页 > news >正文

丹徒建设网官方网站北京网络营销推广

丹徒建设网官方网站,北京网络营销推广,珠海医疗网站建设公司,做家政服务类网站的要求前言 本文为博主的vue实战小项目系列中的第三篇,很适合后端或者才入门的小伙伴看,一个前端项目从0到1的保姆级教学。前面的内容: 【vue实战项目】通用管理系统:登录页-CSDN博客 【vue实战项目】通用管理系统:封装to…

前言

本文为博主的vue实战小项目系列中的第三篇,很适合后端或者才入门的小伙伴看,一个前端项目从0到1的保姆级教学。前面的内容:

【vue实战项目】通用管理系统:登录页-CSDN博客

【vue实战项目】通用管理系统:封装token操作和网络请求-CSDN博客

目录

1.api封装

2.404页面

3.探讨


1.api封装

由于一个项目里api是很多的,随处都在调,如果按照之前的写法,在每个组件中去调api,一旦api有改动,遍地都要去改,所以api应该也要封装一下,将api的调用封装在函数中,将函数集中在一起便于管理。

在src下面建一个api目录,用来放api,在api目录里建一个api.js,在其中封装各个api:

由于项目到这一步为止,只用到了一个后端的api,即login,所以此处api.js内容如下:

import service from '../utils/service'export function login(data){return service({method:'post',url:'/login',data})
}

抽出api.js后以后的后端api调用就用api.js中提供的函数,这里先改一下Login页面的api调用逻辑:

import {setToken} from '@/utils/setToken.js'
import {login} from '@/api/api.js'
methods:{login(form){this.$refs[form].validate((valid=>{if(valid){console.log(this.form)// this.service.post('/login',this.form)// .then(res=>{//   console.log(res.status)//   if(res.status===200){//     setToken('username',res.data.username)//     setToken('token',res.data.token)//     this.$router.push('/home')//   }// })login(this.form).then(res=>{console.log(res.status)if(res.status===200){setToken('username',res.data.username)setToken('token',res.data.token)this.$router.push('/home')}})}else{console.error(this.form)}}))}}

改完之后可以运行项目试试,是正常可用的。

2.404页面

接下来我们开发一下404页面,404页面作为系统的一个通用页面,任何非法请求,全部都会跳转到404页面上。我们可以参考一下现在大多数系统中404页面的做法,一张简洁的图+跳转回首页的路由即可。

准备好404页面的背景图,新建好404页面的组件:

组件代码:

<template><div class="background-container"><!-- Your page content goes here --><div class="content"><div>页面不见了!</div><div>首页瞧瞧,点击<router-link to="/">这里</router-link>进入首页.</div></div></div>
</template><script>
export default {name: 'YourComponent',
};
</script><style lang="less">
/* Scoped styles for the component */.background-container {/* Adjust the path to your actual image file */background-image: url('../assets/404.jpg');background-size: cover;background-position: center;background-repeat: no-repeat;margin: 0;padding: 0;height: 100vh; /* Set the height to 100% of the viewport height */display: flex;justify-content: center;align-items: center;.content {text-align: center;
}
}
</style>

接下来是所有非法请求都能转跳404页面的关键步骤——配置路由:

请求进来会先去试图精准匹配路由,如果匹配不上就会交给通配符来处理,所以404页面的path用通配符即可实现访问方法页面转跳到404页面的效果。

路由配置:

import Vue from 'vue'
import Router from 'vue-router'Vue.use(Router)export default new Router({routes:[{path:'/',redirect:'/login',component: ()=>import('@/components/Login')},{path:'/login',name:'Login',component: ()=>import('@/components/Login')},{path:'/home',component: ()=>import('@/components/HelloWorld')},{path:'*',name:'NotFound',component:()=>import('@/components/NotFound')}],mode:'history'
})

最后看看效果:

访问一个不存在的路径,转跳到404上。

3.探讨

这里探讨一下疯转api.js的价值(可以直接跳过):

在现代前端开发中,封装一个独立的 api.js 文件通常是为了更好地组织和管理前端与后端之间的数据交互,以及统一管理 API 请求。

以下是一些常见的原因:

  1. 代码组织和可维护性: 将所有与后端通信的 API 请求集中到一个文件中,可以更轻松地组织和维护代码。这使得团队能够更容易地找到和修改与 API 相关的代码。

  2. 统一管理 API 地址:api.js 中集中管理所有的 API 地址,可以使团队更容易地管理和更新这些地址,而不必在整个应用中进行广泛的查找和替换。

  3. 封装请求逻辑:api.js 中可以封装一些通用的请求逻辑,例如处理请求和响应的拦截器、认证信息的注入等。这有助于减少重复代码,提高代码的复用性。

  4. 易于测试: 将 API 请求逻辑封装到一个文件中,有助于更容易地进行单元测试。你可以专注于测试 api.js 文件,确保它正确处理各种请求和响应情况。

  5. 适应不同环境:api.js 中可以设置不同环境下的 API 地址,例如开发环境、测试环境和生产环境。这使得在切换环境时更加方便,而无需手动更改多个文件。

  6. 团队协作: 将 API 请求抽象到一个文件中,可以使团队更容易协作。开发人员可以专注于实现页面和组件,而不必深入关注底层的 API 请求细节。

  7. 更好的错误处理:api.js 中可以集中处理错误,例如统一处理错误状态码、添加通用的错误提示等,从而提供更好的用户体验。

总的来说,封装一个独立的 api.js 文件有助于提高代码的可维护性、可测试性和团队协作效率,同时为应对各种场景提供了更好的灵活性。

http://www.hkea.cn/news/885560/

相关文章:

  • 泉州网站制作广州seo网站开发
  • cuntlove wordpressseo外链发布工具
  • 购买一个网站空间如何可以多个域名使用吗长沙网站建设服务
  • 天津市建设委员会网站上海网站制作开发
  • 扬中网站建设墨子学院seo
  • 分析电子商务网站建设需求教案青岛今天发生的重大新闻
  • 汕头模板开发建站百度发布信息怎么弄
  • 健身网站开发项目总结关键词筛选工具
  • 重庆网站建设零臻靠谱国内永久免费的云服务器
  • 软件库合集软件资料2024郑州百度快照优化
  • 房地产开发公司网站建设方案seo去哪里学
  • 做网站可以赚钱吗百度小说搜索风云排行榜
  • 做网站交接需要哪些权限网站seo视频教程
  • 在网站怎么做收款二维码刷移动关键词优化
  • 问信息奥赛题怎么做 去哪个网站互联网网络推广
  • b2c电子商务网站系统下载专业网站seo推广
  • 引流推广的方法seo诊断工具
  • 平阴县建设工程网站直通车推广怎么做
  • 网站开发外包不给ftp高佣金app软件推广平台
  • 太原适合网站设计地址百度用户服务中心客服电话
  • 济南源码网站建设长沙网站seo推广公司
  • 北京网站制作17页和业务多一样的平台
  • 无锡市住房城乡建设委网站简单网页设计模板html
  • 武汉市大型的网站制作公司网站ip查询
  • 做仪表行业推广有哪些网站电商网站设计
  • 动静分离网站架构百度售后客服电话24小时
  • 做汽车配件生意的网站佛山seo关键词排名
  • 创意建站推荐百度做广告多少钱一天
  • 巴中网站建设公司百度seo怎么做网站内容优化
  • 查网站备案名称上海网络营销seo