Web前端面试经验总结
1.
介绍一下项目?
我在校航软件开发公司做了‘寻好房’vue项目,主要核心是租房和卖房,这个项目前端页面设计用的是div+css+栅格化布局搭建好的页面兼容效果,运用了vue的封装来打包成app,还有官方提供的框架VantUI,后端我则选择了选择比较热门的Node来搭建服务器,nodejs他简单但是强大,简单是体现在它是基于JavaScript进行编码的,基本人人都会,强大体现在它是非阻塞IO,虽然是单线程运行起来却很快,它很小,既是代码又是服务器,而且它可以扩展,因为它有海量的第三方应用组件MongoDB:他是一个非关系型数据库,采用键值存储,以JSON格式存储,文档嵌套可视化也比较好,在查询方面比较强大,我在这个项目中做到了在线客服功能,运用的是基于webSocket通信是客户端与服务器建立起连接,通信过程中,可互相发送JSON、XML、HTML或图片等任意格式的数据。之后的全部数据通信都通过这个连接进行,和地图找房使用的腾讯地图api,注册登录功能前端登录注册向后台发送请求,登录成功后台返回登录者用户信息,并携带 token值进行存储到 cookie 当中,用户访问后台的 API 需要携带 token字段验证信息和后台 session进行验证,如前台访问需要验证 token的API没有正常携带 token参数,即返回 指定的错误代码,前端可根据后台返回的信息,在路由跳转中做判断。因为在这里使用的 axios做vue的请求模块,所以此次项目采用的是在请求拦截模块中根据后台返回的登录状态码进行判断。
2.
http://vue和angular和react的区别是什么?
html.cn/qa/angular-js/14462.html
3.
Vuex的五大核心:state,getter,mutation,action,module
- state:存储数据,存储状态;在根实例中注册了store 后,用$store.state 来访问;对应vue里面的data;存放数据方式为响应式,vue组件从store中读取数据,如数据发生变化,组件也会对应的更新。
- getters:可以认为是 store 的计算属性,相当于 vue中的 computed,依赖于 state里面的值。它的返回值会根据它的依赖被缓存起来,且只有当它的依赖值发生了改变才会被重新计算。
- mutations:用于修改状态,store里面的数仅能通过mutations里面的方法改变,但是必须是同步的。更改 vuex 的 store 中的状态的唯一方法是提交 mutation,也就是$store.commit。
- actions:包含任意异步操作,用它处理完后再触发mutations来改变状态。
- module:将 store 分割成模块,每个模块都具有state、mutation、action、getter、甚至是嵌套子模块。
- 当组件进行数据修改的时候我们需要调用Dispatch来触发Actions里面的方法。
- actions里面的每个方法中都会有一个commit方法,当方法执行的时候会通过commit来触发mutations里面的方法进行数据的修改。
- mutations里面的每个函数都会有一个state参数,这样就可以在mutations里面进行state的数据修改,当数据修改完毕后,会传导给页面。页面的数据也会发生改变。
4.
vuex actions使用(action和mutations的区别)
5.
Vue中 computed、methods和watch的区别
6.
vuex在页面刷新后。
7.
websocket 用途,例子,场景,什么时候用websocket
8.
vue的插槽使用
9.
vue组件之间的通信
10.
vue多层级的传值
11.
1.vue中$parent和$children的使用
2.vue中$parent和$children的使用
12.
vue和微信小程序的区别
13.
vue css中scoped
14.
vue中v-if与v-show的区别以及使用场景
15.
ES6有哪些新特性
16.
ES7新特性
17.
es6,es7,es8语法总结
18.
vue.set和this.$set
19.
关于vue路由守卫做登陆状态判断的问题
20.
vue路由守卫
21.
前端自我介绍:
你好,我叫李xx,我的上一家公司是做前端的。
刚进公司的那时候,什么交互啊,项目需求,测试,代码编写,优化,我都有是积极的参与,因为是新人,所以好好把握住每个学习的机会,我的本职工作,前端这块,我都是认真负责完成。那时候虽然很忙,压力很大,但真的是学到了不少东西,后期项目都不断的在完善,我也不断的在参与。
在上一家公司中,我最的收获不单单是技术方面,主要还有业务能力,自学能力和同事的沟通能力,这都是我学到的,而且我认为很重要的。
技术方面我一直从事于web方面的工作,掌握的前端技术有ajax,js,div+css,html css,vue同时我也了解node服务器和数据库表结构这块,跟后台人员能更有效的沟通。
我的性格方面不算外向,也不算内向,跟朋友,同事相处,比较外向,在工作中,代码开发时,我是比较内向的,我喜欢全心全意的投入工作中。我也喜欢交朋友,偶尔跟朋友聚聚,聊聊。对于工作我总是抱着认真负责,有责任心,吃苦耐劳的态度工作。
谢谢,以上是我的自我介绍。
22.
谈谈对vue的理解
- vue的语法很简单,很容易上手,可以说就是对着模板来填充内容.想要动态绑定的数据,那么就在data中填充内容.想要具体的method,那么就在methods属性中填充内容.想要显示变量就用双花括号.可以说是很简单了.
- vue使用的是MVVM模式,并且使用简单的命令加数据来进行DOM操作,让我避开了进行繁杂的获取,创建和删除DOM元素的操作.
- 借助vue的vue-router插件,可以很方便的实现单页面应用的搭建.并且可以实现浏览器中的回退效果.
- vue的组件化开发可以说很方便的就实现了组件的复用.之前想要写复用组件的时候,一方面要写重复的html,另一方面把对应的CSS文件和JS文件独立开来,需要的时候进行引入.但是vue把三者放在同一个文件中,可以说非常的贴心,修改也很方便.
23.
24.
25.
具体什么情况下适合使合Vuex?Vuex使用中有几个步骤?
具体什么情况下适合使合Vuex?Vuex使用中有几个步骤?
26.
27.
28.
常见的原生javascript DOM操作
29.
腾讯地图基于 WebGL实现自定义栅格图层踩坑实录
30.
WebSocket断开原因、心跳机制防止自动断开连接
后续持续更新ing…