vue每日一问(7)

97 阅读2分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第7天,点击查看活动详情

一。SSR解决了什么问题?有做过SSR吗?你是怎么做的?

Server-Side Rendering 我们称其为SSR,意为服务端渲染。

指由服务端完成页面的 HTML 结构拼接的页面处理技术,发送到浏览器,然后为其绑定状态与事件,成为完全可交互页面的过程。

SSR主要解决了以下两种问题:

  • seo:搜索引擎优先爬取页面HTML结构,使用ssr时,服务端已经生成了和业务想关联的HTML,有利于seo
  • 首屏呈现渲染:用户无需等待页面所有js加载完成就可以看到页面视图(压力来到了服务器,所以需要权衡哪些用服务端渲染,哪些交给客户端)

二。说下你的vue项目的目录结构

这里我们终点说说src目录下的结构:

views:存放页面

components:存放组件

router:配置路由

store:配置全局状态管理

assets:配置静态资源

  • imgs:图片
  • css:样式
  • scss:样式

directive:自定义指令

mixin:全局混入

plugins:自定义插件

flters:全局过滤器

utils:工具类

config:配置资源

api:定义接口

三。vue要做权限管理该怎么做?如果控制到按钮级别的权限怎么做?

前端权限控制可以分为四个方面:

  • 接口权限

    • 登录完拿到token,将token存起来,通过axios请求拦截器进行拦截,每次请求的时候头部携带token
  • 路由权限

    • 全局路由守卫里,每次路由跳转都要做权限判断
  • 菜单权限

    • 登录成功后,菜单信息可以由后端返回,只渲染当前用户的菜单信息
    • 菜单和路由都由后端返回,这样的话,就不需要定义全局路由守卫里,每次路由跳转都要做权限判断
  • 按钮权限

    • 结合 v-if 写判断
    • 结合 自定义指令 将判断的过程封装到指令中