@langlibaitiao
2018-06-20T09:03:22.000000Z
字数 1362
阅读 1010
前端
1 查询接口参数
key对应的value值为空时,该key不传。
2 日期参数
格式为时间戳格式或者yyyy-MM-dd格式。
3 分页参数
传limit与offset。
4 页面刷新后参数保留
保留刷新前的查询条件,路由参数与接口参数均需保留。
1 统一处理错误及配置请求信息
// 在router.js文件下// 添加请求拦截器axios.interceptors.request.use(function (config) {// 在发送请求之前做些什么return config}, function (error) {// 对请求错误做些什么return Promise.reject(error)});// 添加响应拦截器axios.interceptors.response.use(function (response) {// 对响应数据做点什么return response}, function (error) {// 对响应错误做点什么return Promise.reject(error)});
2 登录拦截(例如:判断token信息是否存在)
let router = new Router({routes: [{path: '/',name: "欢迎",meta: {requireAuth: true, // 添加该字段,表示进入这个路由是需要登录的},component: () => import('@/components/client/Hello')},{path: '/login',name: "登录",component: () => import('@/view/login/login')}]})// 在main.js中 利用vue-router提供的钩子函数beforeEach()对路由进行判断。router.beforeEach((to, from, next) => {if (to.meta.requireAuth) { // 判断该路由是否需要登录权限if (store.state.token) { // 通过vuex state获取当前的token是否存在next();}else {next({path: '/login',// 将跳转的路由path作为参数,登录成功后跳转到该路由query: {redirect: to.fullPath}})}}else {next();}})// 确保要调用 next 方法,否则钩子就不会被 resolved。
1 vue的单页面(SPA)项目,必然涉及路由按需的问题。
//Vue-router的官网推荐这种方式://vue异步组件和webpack的【代码分块点】功能结合,实现了按需加载component: () => import('@/pages/client/ClientList')
此类问题 vue官方文档 的链接
使用前端路由,当切换到新路由时,想要页面滚到顶部,或者是保持原先的滚动位置,就像重新加载页面那样。 vue-router 能做到,而且更好,它让你可以自定义路由切换时页面如何滚动。 注意:这个功能只在支持 history.pushState 的浏览器中可用。
链接:vue-router官方文档