记5.25面试的几道题(vue 小程序)

Posted 十九万里

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了记5.25面试的几道题(vue 小程序)相关的知识,希望对你有一定的参考价值。

今天面了两面,第一个是一家外包公司,主要vue和小程序的,第二家没啥技术含量,会写网站就行被我拒了,下面是我记的一些面试题

1、vue生命周期函数

vue生命周期一共四个阶段:
1、实例创建
2、DOM渲染
3.数据更新
4、销毁实例

主要有8个钩子函数:
1:beforeCreat—创建前
触发的行为:vue实例的挂载元素$el和数据对象data都为undefined,还未初始化。
在此阶段可以做的事情:加loading事件
2:created——创建后
触发的行为:vue实例的数据对象data有了,el还没有
在此阶段可以做的事情:解决loading,请求ajax数据为mounted渲染做准备
3:beforeMount 渲染前
触发的行为:vue实例的el和data都初始化了,但还是虚拟的dom节点,具体的data.filter还未替换
4:mounted 渲染后
触发的行为:vue实例挂载完成,data.filter成功渲染
在此阶段可以做的事情:配合路由钩子使用
5:beforeUpdate 更新前
触发的行为:data更新时触发
6: updated 更新后
触发的行为:data更新时触发
在此阶段可以做的事情:数据更新时,做一些处理(此处也可以用watch进行观测)
7:beforeDestroy 销毁前
触发的行为:组件销毁时触发
在此阶段可以做的事情:可向用户询问是否销毁
8:destroy 销毁后
触发的行为:组件销毁时触发,vue实例解除了事件监听以及和dom的绑定(无响应了),但DOM节点依旧存在
在此阶段可以做的事情:组件销毁时进行提示

2、跨域及解决方案

当一个请求url的协议、域名、端口三者之间任意一个与当前页面url不同即为跨域
解决方案:
1、jsonp
2、cors
vue代理
在请求头中设置字段,前后端都需要设置,
3、跨文档通信 API:window.postMessage()
4、设置document.domain解决无法读取非同源网页的 Cookie问题
什么是跨域?跨域解决方法

3、自己封装过什么东西

这点之前没注意,回来之后找了几个准备练手一下
封装select:

Element-UI二次封装实现TreeSelect 树形下拉选择组件
封装axios
封装定时器
封装日期格式装换

4、axios是什么,是怎么实现的

axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端。简单的理解就是ajax的封装
在项目中的使用是先使用vue-cli安装axios依赖包,然后再vue.config.js中配置
自己封装http。
axios基本用法
vue.cli项目封装全局axios,封装请求,封装公共的api和调用请求的全过程

5、小程序扫码,分享朋友圈,客服功能

小程序使用的都是微信原生的接口:
扫码:wx.scanCode.获取到数据后,在把失败或者成功的回调函数掉给接口
微信小程序 扫码功能
分享朋友圈:wx.onShowAppMessage 和wx.onShowTimeLine
微信小程序实现分享到朋友圈

6、JQ

先放这,晚上回来复习
jQuery面试题

7、promise

Promise 是异步编程的一种解决方案,其实是一个构造函数,自己身上有all、reject、resolve这几个方法,原型上有then、catch等方法
有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)
可以使用async awite 来简化promise
ES6 Promise用法小结

8、vue2.0和3.0的区别

1、项目目录结构
2.配置项
3.渲染方式
4.按需导入
5.支持ts的使用
Vue3.0新特性及使用方法
Vue2.0和Vue3.0的区别

9.es6的特点,es7.es8有哪些新特性

es6的特点我就不写了
es7:
1、Array.prototype.includes(value[, fromIndex])
2、求幂运算符(

3、函数作用域中严格模式的变更**
ES7~8新特性
es8:
异步函数(Async functions)
es5 es6 es7 es8新特性

10、canvas画图会不会

学习HTML5 Canvas这一篇文章就够了

11、用过模板引擎吗

template:
浅析嵌入式 JS 模板引擎之EJS

以上是关于记5.25面试的几道题(vue 小程序)的主要内容,如果未能解决你的问题,请参考以下文章

初赛记

Linux下C语言的几道经典面试题

应届生/社招面试最爱问的几道Java基础问题

技术好却进不了大公司?程序员面试的几个小技巧请收好

C语言之非常简单的几道题

[Leetcode] Backtracking回溯法解题思路