1、一般 vue 开发用什么库来辅助
vantUI, elementUI, js-cookie, socket.io, axios, ECharts
2、页面刚开始出现一片空白的原因
- 网络设置的问题,有可能是 IP、端口等出现问题了。
- 网速比较慢导致(加载速度慢)。
- 浏览器本身出现问题了。
- 网络防火墙的问题,设置安全级别过高。
- 病毒导致。
- 打包路径不对。
3、vue 的项目如何做首屏的优化
- v-if 和 v-show 区分使用场景。
- computed 和 watch 区分使用场景。
- v-for 遍历必须为 item 添加 key,且避免同时使用 v-if。
- 长列表性能优化。
- 事件的销毁 addEventListener 事件监听。
- 图片资源懒加载。
- 精灵图。
- 路由懒加载。
- 第三方插件的按需引入。
- 优化无限列表性能。
- 服务端渲染 SSR。
- 代码压缩。
4、在浏览商品时,点击商品详情,然后返回,要求进度条还在之前的位置,怎么做
- App.vue 页面中使用 keep-alive 缓存组件。
- 在离开商品详情页记录进度条的高度,返回商品详情的重新给进度条进行赋值。
5、localstorage 能实现 token 的存储需求,为啥还要存储在 vuex 中呢
- 因为 localstorage 里面存储的类型只能是字符串,如果存储的内容不是字符串,还需要转换,有额外的性能消耗。
- localstorage 里面的数据变化不能进行监控,如果有需求是根据 token 的变化进行的操作的,那 localstorage 就实现不了。
- localstorage 是磁盘操作,vuex 是内存操作,其实性能比 vuex 去数据慢的多。
6、项目中后台接口没有写好你怎么做,有几种方式
可以模拟假数据。方式:组件内写死 mock.js json-serve。
7、cookie 为什么不能存储 token 或存储在 cookie 有什么问题
- cookie 每次请求都会携带,比较消耗性能。
- 防止 CSRF 攻击,CSRF 主要就是攻击浏览器的 cookie,这样如果存储 token 就容易被劫持到。
8、如果任务分配不合理你会怎么办
看能不能在规定的时间内完成,如果能完成,完成后找老大说明这个问题。如果完成不了,及时找老大协商,不能耽误项目的开发进程。
9、axios 挂到原型上有什么作用
各个组件内,可以直接拿到用 axios,就不需要各个组件进行引入了。
13、怎么知道自己项目所处的环境是什么
- 看 ip 和端口地址。
- 启动项目方式。
14、cli 用的是那个版本和 src 里面都有哪些文件
版本:Vue 2.6.10, Vuex 3.1.0, Vue-cli 4.4.4, webpack 4.4.0。 src: api (接口请求), assets (静态图片), components (公共组件), icons (字体图标), router (路由配置), store (vuex), utils (axios 封装), views (页面级路由)。
15、你封装过组件吗,有什么,说一下怎么封装的
我用 vue 开发的所有项目,都是采用组件化的思想开发的。一般我在搭建项目的时候,会创建一个 views 目录和一个 components 目录,views 目录中放页面级的组件,components 中放公共组件(如 head(公共头组件),foot(公共底部组件)等)。 例如:

