前端 2019.11月份面试

期间遇到的问题:

1.element-ui 样式改不了
    答:1.通过自己在标签里添加类名层叠不了,通过F12 把类名复制过来取层叠有效
2.循环的时候加入key ,不加有过报错的情况,查了下:在vue高版本中会报错
    答:key属性需要唯一,理想的 key 值是每项都有唯一id,全局不需唯一,但在一个循环中需要唯一。
3.引入图片 以为写个地址就行看,结果失败了,最后加入了requer()就OK了  
    答:因为放在template模板里会被webpack打包所以可以,而放在data或者动态赋值,图片路径只是一个字符串webpack不会处理所以引用不到。
4.本地开发跨域问题
    答:config -- proxyTable --- changeOrigin: true, // 是否启用跨域
5.打包的时候资源引用错误就是那个地址
    答:打包后部署服务器的时候报错 是个路径问题,把config里index.js  build 大括号里 assetsPublicPath 的 /根路径,改成./ 相对路径
6.vue-router路由参数刷新消失的问题
    答:params传参可以传过去,但是不会显示在url上,在此刷新数据本页数据会没有,query会在url上
    
7.刚建项目的时候安装sass出了问题,报错

Css3 透视

perspective :100 ;

值越小 和眼睛越近越小越明显,值越大越不明显

ES6 特性

let、const
箭头函数
扩展运算符
默认参数
模板字符串
解构赋值
pormise

C3动画怎么写?

animation:name  duration iteration-count
        动画的名字 动画持续的时间 动画的播放次数 infinite(无限循环)
animation:动画名 5s; 
@keyframes 动画名
{
0%   {background:red;}
100% {background:green;}
}

vue-router 钩子

全局的钩子
beforeEach(to,from,next)
- 页面加载之前
- 页面跳转之前权限认证,访问拦截
afterEach(to,from,next)
- 页面加载之后
组建内的导航钩子
beforeRouteEnter、beforeRouteUpdate、beforeRouteLeave,直接在路由组件内部进行定义的
POST请求axios设置什么
headers: {'Content-Type':'application/x-www-form-urlencoded; charset=UTF-8'};
请求头,一般采用x-www-form-urlencoded
发送的数据要序列化,特别注意啊,因为axios默认的格式是Request Payload。
浏览器输入网址后经历了什么
  1. 输入网址回车
  2. 从dns服务器获取服务器ip
  3. 通过ip向服务器建立tcp三次握手连接
  4. 向服务器发送请求
  5. 服务器接收到请求,处理请求
  6. 服务器处理完请求向浏览器响应
  7. 浏览器接收到服务器的响应 解析
  8. 生成dom树 浏览器渲染页面

vuex

1. 什么是vuex :
    Vuex 是一个专为 Vue.js 应用程序开发的状态管理模式。它采用集中式存储管理应用的所有组件的状态,并以相应的规则保证状态以一种可预测的方式发生变化。Vuex 也集成到 Vue 的官方调试工具 devtools extension,提供了诸如零配置的 time-travel 调试、状态快照导入导出等高级调试功能。
2. 他的属性方法有哪些?每个阶段是干嘛的?
    ? State、mutations、getters、actions、 modules
Store
    表示对Vuex对象的全局引用。组件通过Store来访问Vuex对象中的State
? State
    Vuex对象的状态,即其所拥有的数据
? Getter
相当于Store的计算属性。因为就像计算属性一样,Getter的返回值会根据它的依赖被缓存起来,且只有当它的依赖值发生了改变才会被重新计算。下面会说到具体的使用场景
? Mutation
定义了对State中数据的修改操作。组件使用State中的数据的时候并不能直接对数据进行修改操作,需要调用Mutation定义的操作来实现对数据的修改。这也是Vuex定义中所说的用相应的规则来让数据发生变化的具体实现
? Action
Mutation中定义的操作只能执行同步操作,Vuex中的异步操作在Action中进行,Action最终通过调用Mutation的操作来更新数据
? Module
Store和State之间的一层,便于大型项目管理,Store包含多个Module,Module包含State、Mutation和Action

TCP三次握手

浏览器要向服务器发送请求之前
1.浏览器先要问下服务器你在吗?
2.服务器回复浏览器回复说我在确认信息
3.浏览器说 我收到了你的回应信息了
然后在发送请求

怎么解决代码冲突:

通过报错百度解决方法,因为碰到过好几次后,每个人负责不同的页面,在有代码的页面只增不减

如果想要保留本地修改的话,使用:

1、直接解决冲突:使用当前|使用传入
2、
git stash    //隐藏本地修改
git pull     //拉取服务器代码
git stash pop  //取消本地代码隐藏

11.18下午 电话面试 平安

  1. 高德经纬度怎么获取、转换坐标值的?地图路径规划?

    
    
  2. 权限是怎么做的?

    用户登录根据先判断本地有没有token,如果有token并且是当前登录的账号,根据后台返回的数据渲染当前角色的显示内容,如果没有token 去后台请求,得到相应角色的权限
    
  3. 怎么控制不同用户 某个按钮 功能 展示和不展示?

    在用户登录后根据用户id读取用户的所有权限,比如说某个是删除按钮 本用户没有,让后台返回一个参数,deleteBtn:0/1,如果是0就不显示,如果是1就显示按钮
    
  4. 角色管理 具体实现了什么功能?

    角色管理实现了角色的增删改查,冻结
    冻结:前端只管冻结,要是冻结后这个账号的数据在数据库,这个账号登录的时候后台返回参数 账号被冻结,自动跳到登录页 弹出页面提示 这个账号被冻结信息。
    
  5. 和后端交互的协议?

    http
    WebSocket
    
  6. WebSocket ?

    建立在tcp协议上的全双工通信协议,一般用在网站里面作为用户和后台人员沟通的或者是用来通讯的
    
  7. Ajax ?

    // 1. 创建一个 XMLHttpRequest 类型的对象 —— 相当于打开了一个浏览器
    var xhr = new XMLHttpRequest()
    // 2. 打开与一个网址之间的连接 —— 相当于在地址栏输入访问地址
    xhr.open('GET', '/time')
    // 3. 通过连接发送一次请求 —— 相当于回车或者点击访问发送请求
    xhr.send(null)
    // 4. 指定 xhr 状态变化事件处理函数 —— 相当于处理网页呈现后的操作
    xhr.onreadystatechange = function () {
      // 通过 xhr 的 readyState 判断此次请求的响应是否接收完成
      if (this.readyState === 4) {
        // 通过 xhr 的 responseText 获取到响应的响应体
        console.log(this.responseText)
      }
    }
    
    readyState 状态描述 说明
    0 UNSENT 代理(XHR)被创建,但尚未调用 open() 方法。
    1 OPENED open() 方法已经被调用,建立了连接。
    2 HEADERS_RECEIVED send() 方法已经被调用,并且已经可以获取状态行和响应头。
    3 LOADING 响应体下载中, responseText 属性可能已经包含部分数据。
    4 DONE 响应体下载完成,可以直接使用 responseText
  8. 实时显示车在哪里?

?

  1. MVC MVVM ?

    M 模型
    V 视图
    VM 视图模型 是mvvm的核心,数据和视图不能直接通信,需要靠vm当个桥梁连接m和v,vm把数据模型转化成为是视图,也可以把用户在界面操作后转化为数据,形成双向数据绑定。
    数据双向绑定有很重要的方法Object.difneproty() 给每个数据设置set 和get 
    当数据发生改变,watcher劫持到了数据通知模板解析更新视图
    ---------------------------------------------------------------------------------------
    MVC
    M 模型
    V 视图
    C 控制器 页面业务逻辑
    mvc 是单向通信 
    
  2. less 引入项目的流程?

npm i less
然后在 webpack.base.conf.js里面配置 less-loader 代码

npm i less;
main.js 里面引入代码 {test:/\.less$/,loader:"style-loader!css-loader!less-loader"}
  1. 怎么解决同事之间代码冲突?

    1.有很多>>>>>> 和同事商量下
    2.其他同事写了代码我我也在我的区域写了代码 git push 不上去,先隐藏本地代码 git stach  ,在git pull 拉取,最后取消隐藏本地代码
    
  2. 怎么使用webpack 打包 流程?

    npm run build   
    1.路径改成./
    2.productionSourceMap:false 生成map文件改成false 
    
  3. 浏览器兼容器的问题?

    1.不同浏览器padding和margin不同 
    解决方案:{margin:0,padding:0}
    2.
    
  4. 字符串转json?

  5. 访问后台用什么 请求?

  6. 把form-data表单请求后端 怎么设置的?

    Content-Type:multipart/form-data
    

11.18 下午 电话面试 海康威视

  1. C3特性

    animation
    transtaion
    transform
    border-shadow
    border-image
    rgba
    border-radio
    flex
    盒模型:
    box-sizing:border-box 
    box-sizing:content-box
    媒体查询
    
  2. C3透视

  3. 定义一个C3动画

  4. Echarts 地图哪里的?

  5. Echarts 数据量很大的情况 怎么办?

  6. 用Echarts 心得 ?

    tooltip 超出 div 限制
    问题:在做条形图时,当div容器较小时,tooltip的内容又较长时,会导致tootip文字被遮挡。
    仔细查阅Echarts文档,可以发现有个tooltip.confine的属性,设置为true时可保证toolip的内容限制在图表的区域范围内。
    
  7. setTimeout 和 Promise 区别?

    Promise 就是一个对象,用来传递异步操作的消息。有三种状态:pending(进行中),resolved(已完成)和rejected(失败)有了promise对象,就可以将异步操作以同步操作的流程表示出来,避免了层层嵌套的回调函数。
    
    
  8. async await 是一种什么样的机制?

    
    
  9. ES6 新特性

  1. 箭头函数 this特性

this指向外层作用域的this
```

  1. const var let 提升 定义 赋值

    var 可以变量提升 let const 不可以
    var 可以重新定义 let const 不可以
    const的值赋值简单数据类型 值不可更改,赋值复杂数据类型 值可以更改
    const 必须赋值 不能用null替代
    
    
  2. node用过什么框架?

    express
    
  3. js事件循环机制

?

  1. 居中布局

?

  1. MVC MVVM 区别

11.19上午 全球同方人寿

  1. for循环删除列表某一项

11.19下午 智昌科技

  1. Echarts 处理tab切换数据改变不了问题
  2. 怎么修改Element-UI 样式
  3. element-ui 时间格式化
  4. async?await?捕捉错误?怎么捕捉?catch
  5. token?过期之后跳回到登录页,写在哪里?
  6. token存到哪里?localstor
  7. token怎么发给后台?
  8. css两端布局
  9. 父组件?传值给多层子组件?怎么传?

11.19 晚上 博彦科技 电话面试

  1. 对vue的理解 介绍vue

    
    
  2. vue用什么脚手架?

    
    
  3. vue脚手架里怎么用sass?

    
    
  4. 在vue哪个生命周期中获取DOM

    
    
  5. vue的指令5个

    
    
  6. v-model 干嘛用的 v-model和v-bind 区别?

    
    
  7. v-show v-if区别?

    
    
  8. 父子组件的通信?

    
    
  9. 非父子组件传值?

    
    
  10. 什么时候用vuex ?


  1. vue 中 data 为什么是一个函数 不是一个对象?

    'abc' ?  '真'  :  '假' //真
    'abc' === true      //false
    'abc' == true       //false
    
  2. Promise干嘛用?

    异步回调有4中
    1.callback 回调函数
    2.generator + co 库
    3.promise
    4.async + await 
    
  3. 给vue 里的data 的对象添加一个属性 会发生什么?如何解决?

    发生数据丢失?
    
  4. 优化性能?

    
    
  5. 本地缓存 localStorage、sessionStorage、cookie、session对比

    
    
  6. Ajax能不能跨域? 存在同源策略?

    
    

11.21上午 工商 现场面试

  1. MVVM MVC
  2. 路由导航守卫
  3. Vue生命周期钩子函数
  4. 项目中遇到过哪些困难?
  5. webpack在实际项目中怎么配置?

11.23 下午 电话面试

  1. 工作中遇到了什么困难?怎么解决的?

  2. ES6新特性

  3. 兼容问题怎么解决的?

  4. Vue框架和jQuery的区别是什么?

    最明显的就是思维方式不同,jquery 是以操作dom为主,做了数据处理之后还需要对dom进行操作。vue.js是以操作数据为主,不操作dom,也就是传说中的双向数据绑定,你只需要操作数据就好,dom自动更新
    
  5. 怎么理解ajax?

    Ajax是一套用来发异步请求的技术,它可以让我们不用跳转网页就能发请求,所以我们也把ajax叫局部请求技术。
    
    Ajax应用程序的优势在于:
    1. 通过异步模式,提升了用户体验
    2. 优化了浏览器和服务器之间的传输,减少不必要的数据往返,减少了带宽占用
    3. Ajax引擎在客户端运行,承担了一部分本来由服务器承担的工作,从而减少了大用户量下的服务器负载。
    2、AJAX最大的特点是什么。
    Ajax可以实现动态不刷新(局部刷新)
    就是能在不更新整个页面的前提下维护数据。这使得Web应用程序更为迅捷地回应用户动作,并避免了在网络上发送那些没有改变过的信息。
    
  6. 事件委托

    事件委托,是利用了冒泡的原理,把事件委托给子孙元素的祖先元素,当点击子孙元素后,由于事件冒泡,祖先元素会捕获到该事件,并可以使用事件对象.target来获取是最先触发的是哪一个子孙元素,从而实现了事件的绑定
    
  7. null与undefined的区别?

    console.log(null==undefined)//true
    console.log(null===undefined)//false
    
    null表示"没有对象",即该处不应该有值。典型用法是:
    (1) 作为函数的参数,表示该函数的参数不是对象。
    (2) 作为对象原型链的终点。
    
    undefined表示"缺少值",就是此处应该有一个值,但是还没有定义。典型用法是:
    (1)变量被声明了,但没有赋值时,就等于undefined。
    (2) 调用函数时,应该提供的参数没有提供,该参数等于undefined。
    (3)对象没有赋值的属性,该属性的值为undefined。
    (4)函数没有返回值时,默认返回undefined。
    
    
  8. 项目中遇到过什么问题?

    
    
  9. $toute 和 $router routes

    $router是VueRouter的实例,在script标签中想要导航到不同的URL,使用$router.push方法。
    返回上一个历史history用$router.to(-1)
    $route为当前router跳转对象。里面可以获取当前路由的name,path,query,parmas等。
    
    router可以理解为一个容器,或者说一种机制,它管理了一组route。简单来说,route只是进行了URL和函数的映射,而在当接收到一个URL之后,去路由映射表中查找相应的函数,这个过程是由router来处理的。
    route,它是一条路由。
    routes,是一组路由。
    
    
  10. vue-router有哪几种导航钩子?(具体怎么用的)

三种,
第一种:是全局导航钩子:router.beforeEach(to,from,next),作用:跳转前进行判断拦截。
第二种:组件内的钩子
第三种:单独路由独享组件

用到vue-router的导航钩子的时候,发现有三类:
1 、全局导航钩子   // 全局导航钩子 直接挂载在router实例上的
beforeEach
beforeResolve
afterEach

2 、某个路由独享的导航钩子
beforeEnter  // 直接在router的路由配置中使用

3 、路由组件上的导航钩子 // 定义一个vue模板,这个模板被router的配置文件的component使用
beforeRouteEnter    // 某个路由独享的导航钩子beforeEnter
beforeRouteUpdate (2.2 新增) 
beforeRouteLeave
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,817评论 6 492
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,329评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,354评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,498评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,600评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,829评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,979评论 3 408
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,722评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,189评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,519评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,654评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,329评论 4 330
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,940评论 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,762评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,993评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,382评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,543评论 2 349

推荐阅读更多精彩内容

  • 前端开发面试题 面试题目: 根据你的等级和职位的变化,入门级到专家级,广度和深度都会有所增加。 题目类型: 理论知...
    怡宝丶阅读 2,572评论 0 7
  • 最近在找工作,面试了好多家公司,结果都不怎么理想。要么公司环境氛围不行,要么工资达不到理想的薪资。大部分公司对程序...
    隔壁老樊啊阅读 5,752评论 2 34
  • 最近在找工作,面试了好多家公司,结果都不怎么理想。要么公司环境氛围不行,要么工资达不到理想的薪资。大部分公司对程序...
    这是这时阅读 760评论 0 21
  • 1、移动端你遇到过什么兼容问题?1、如果在input设置边框颜色在ios系统里会出现兼容性问题,需要在外面加一个d...
    阿帕奇哟阅读 797评论 0 8
  • 1、移动端你遇到过什么兼容问题? 1、如果在input设置边框颜色在ios系统里会出现兼容性问题,需要在外面加一个...
    青青菜鸟阅读 4,401评论 0 28