本文目录导航:
47道基础的VueJS面试题(附答案)
1、什么是MVVM框架?它实用于哪些场景?
MVVM框架是一个 Model-View-View Model框架,其中 ViewModel衔接模型Model)和视图(View)。
在数据操作比拟多的场景中,MVVM框架更适合,有助于经过操作数据渲染页面。
2、active- class是哪个组件的属性?
它是 vue-router模块的 router-link组件的属性。
3、如何定义Vue- router的灵活路由?
在静态路由称号前面参与冒号,例如,设置id灵活路由参数,为路由对象的path属性设置/:id。
4、如何失掉传上来的灵活参数?
在组件中,经常使用$router对象的 ,即 $ 。
5、vue- router有哪几种导航钩子?
有3种。
第一种是全局导航钩子(to,from,next)。
作用是跳转行启动判别阻拦。
第二种是组件内的钩子。
第三种是独自路由独享组件。
6、mint-ui是什么?如何经常使用?
它是基于 的前端组件库。
用npm装置,而后经过 import导入样式和Javascript代码。
(mintUi)用于成功全局引入, import {Toast} from mint-ui用于在单个组件部分引入。
7、V-model是什么?有什么作用?
v- model是 Vue. js中的一条指令,可以成功数据的双向绑定。
8、中标签如何绑定事情?
绑定事情有两种方式。
第一种,经过v-on指令, 。
第二种,经过@语法糖, input@ click= doLog()/>。
9、vuex是什么?如何经常使用?在哪种性能场景中经常使用它?
vuex是针对 Vue. js框架成功的形态治理系统。
为了经常使用vuex,要引入 store,并注入组件中,在组件外部即可经过$ ostore访问 store对象。
经常使用场景包含:在单页运行中,用于组件之间的通讯,例如音乐播放、登录形态治理、参与购物车等。
10、如何成功自定义指令?它有哪些钩子函数?还有哪些钩子函数参数?
自定义指令包含以下两种。
它有如下钩子函数。
钩子函数的参数如下。
11、至少说出中的4种指令和它们的用法。
相关指令及其用法如下。
12、Vue-router是什么?它有哪些组件?
它是 Vue. js的路由插件。
组件包含 router-link和 router-vIew。
13、导航钩子有哪些?它们有哪些参数?
导航钩子又称导航守卫,又分为全局钩子、单个路由独享钧子和组件级钧子。
全局钩子有 beforeEach、beforeResolve(Vue2.5.0新增的)、 afterEach。
单个路由独享钩子有 beforeEnter。
组件级钩子有 beforeRouteEnter、 beforeRouteUpdate(Vue2.2新增的) beforeRouteLeave。
它们有以下参数。
14、的双向数据绑定原理是什么?
详细步骤如下。
(1)对须要观察的数据对象启动递归遍历,包含子属性对象的属性,设置set和get个性方法。
当给这个对象的某个值赋值时,会触发绑定的set个性方法,于是就能监听到数据变动。
(4)MVVM是数据绑定的入口,整合了 Observer、 Compile和 Watcher三者,经过Observer来监听自己的 model数据变动,经过 Compile来解析编译模板指令,最终应用Watcher搭起 Observer和 Compile之间的通讯桥梁,到达数据变动通知视图降级的成果。
应用视图交互,变动降级数据 model变卦的双向绑定成果。
15、请详细说明你对生命周期的了解。
总共分为8个阶段,区分为 beforeCreate、created、beforeMount、 mounted、beforeUpdate、 updated、 beforeDestroyed、 destroyed。
当经常使用组件的kep- alive性能时,参与以下两个周期。
Vue2.5.0版本新增了一个周期钩子:ErrorCaptured,当捕捉一个来自子孙组件的失误时调用。
16、请形容封装Vue组件的作用环节。
组件可以优化整个名目标开发效率,能够把页面形象成多个相对独立的模块,处置了传统名目开发中效率低、难保养、复用性等疑问。
经常使用方法创立一个组件,经常使用方法注册组件。
子组件须要数据,可以在 props中接纳数据。
而子组件修正妤数据后,若想把数据传递给父组件,可以驳回emit方法。
17、你是怎么意识vuex的?
vuex可以了解为一种开发形式或框架。
它是对 Vue. js框架数据层面的裁减。
经过形态(数据源)集中治理驱动组件的变动。
运行的形态集中放在 store中。
扭转形态的方式是提交 mutations,这是个同步的事务。
异步逻辑应该封装在 action中。
18、Vue- loader是什么?它的用途有哪些?
它是解析文件的一个加载器,可以将 template/js/style转换成 Javascript模块。
用途是经过 vue-loader, Javascript可以写 EMAscript 6语法, style样式可以运行scss或less, template可以参与jade语法等。
19、请说出名目标src目录中每个文件夹和文件的用法。
assets文件夹寄存静态资源;components寄存组件;router定义路由相关的性能;view是视图;app. vue是一个运行主组件;是入口文件。
20、在中怎么经常使用自定义组件?在经常使用环节中你遇到过哪些疑问?
详细步骤如下。
(1)在 components目录中新建组件文件,脚本必定要导出泄露的接口。
(2)导入须要用到的页面(组件)。
(3)将导入的组件注入uejs的子组件的 components属性中。
(4)在 template的视图中经常使用自定义组件。
21、谈谈你对的 template编译的了解。
简而言之,就是首先转化成AST( Abstract Syntax Tree,形象语法树),行将源代码语法结构形象成树状体现方式,而后经过 render函数启动渲染,并前往VNode( Vue. js的虚构DOM节点)。
详细步骤如下。
(1)经过 compile编译器把 template编译成AST, compile是 create Compiler的前往值, createCompiler用来创立编译器。
另外, compile还担任兼并 option。
(2)AST会经过 generate(将AST转化成 render funtion字符串的环节)失掉 render函数, render的前往值是 VNode, VNode是 的虚构DOM节点,外面有标签名子节点、文本等。
22、说一下中的MVVM形式。
MVVM形式即 Model- View- ViewModel形式。
是经过数据驱动的, Vue. js实例化对象将DOM和数据启动绑定,一旦绑定,和数据将坚持同步,每当数据出现变动,DOM也会随着变动。
ViewModel是的外围,它是 的一个实例。
会针对某个HTML元素启动实例化,这个HTML元素可以是body,也可以是某个CSS选用器所指代的元素。
DOM Listeners和。
36、如何在 Vue. js中循环拔出图片?
对“src”属性插值将造成404恳求失误。
应经常使用 v-bind:src格局替代。
代码如下:
前端框架实战:经常使用Vue.js成功微信界面
微信(wechat)是腾讯公司于2011年1月21日推出的一个为默认终端提供即时通讯服务的收费运行程序,微信允许跨通讯经营商、跨操作系统平台经过网络极速发送收费(需消耗大批网络流量)语音短信、视频、图片和文字,同时,也可以经常使用经过共享流媒体内容的资料和基于位置的社交插件“摇一摇”、“漂流瓶”、“好友圈”、”群众平台“、”语音记事本“等服务插件。
截止目前为止,微信的生动用户已超九亿,成为如今人们日常生存中必无法缺的通讯工具。
而是前端开发中一套构建用户界面(user interface)的渐进式框架。
Vue 从基本上驳回最小老本、渐进增量(incrementally adoptable)的设计。
Vue 的外围库只专一于视图层,并且很容易与其余第三方库或现有名目集成。
当天,Hope教员就带大家经常使用成功微信界面! Hope:5年H5开发阅历,长于webApp,混合开发,名目治理。
目前任职于某大数据公司,担任前端平台架构和混合开发。
《 前端实战成功微信界面 》预习资料 源码 直播期间:2017年8月6日(周日)早晨8点 加 Q 群(),加群暗号:「vue仿微信界面-」。
曾经在群里的同窗关注上课通知就可以哦~
自学前端,前端开发的学习路途是什么?
自学前端其实很辛劳,须要有弱小的自制力和坚持下去的学习心,并且做好详细的学习规划严厉口头;假设你想学前端,上方的学习路途可能对你有协助。
前端完整学习路途
第一阶段:
HTML CSS:HTML进阶、CSS进阶、div css规划、HTML css整站开发。
Javascript基础:Js基础教程、js内置对象罕用方法、经常出现DOM树操作大全、ECMAscript、DOM、BOM、定时器和焦点图。
JS基本特效:经常出现特效、例如:tab、导航、整页滚动、轮播图、JS制造幻灯片、弹出层、手风琴菜单、瀑布流规划、滚动事情、滚差视图。
JS初级特色:正则表白式、排序算法、递归算法、闭包、函数节流、作用域链、基于距离静止框架、面向对象基础。
JQuery:基础经常使用悬着器、DOM操作、特效和动画、方法链、拖拽、变形、JQueryUI组件基本经常使用。
第二阶段:HTML5和移动Web开发
HTML5:HTML5新语义标签、HTML5表单、音频和视频、离线和本地存储、SVG、Web Socket、Canvas。
CSS3:CSS3新选用器、伪元素、神色示意法、边框、阴影、background系列属性扭转、Transition、动画、景深和深透、3D成果制造、框架、元素进场、出场战略、炫酷CSS3网页制造。
Bootstrap:照应式概念、媒体查问、照应式网站制造、删格系统、删格系统原理、Bootstrap罕用模板、LESS和SASS。
移动Web开发:跨终端WEB和干流设施简介、视口、流式规划、弹性盒子、rem、移动终端Javascript事情、手机中经常出现JS成果制造、、手机聚划算页面、手机滚屏。
第三阶段:HTTP服务和AJAX编程
WEB主机基础:主机基础常识、Apache主机和其余WEB主机引见、Apache主机搭建、HTTP引见。
PHP基础:PHP基础语法、经常使用PHP处置便捷的GET或许POST恳求。
AJAX上篇:Ajax简介和异步的概念、Ajax框架的封装、XMLHttpRequest对象详细引见方法、兼容性处置方法、Ajax框架的封装、Ajax中缓存疑问、XML引见和经常使用。
AJAX下篇:JSON和JSON解析、数据绑定和模板技术、JSONP、跨域技术、图片预读取和lazy-load技术、JQuery框架中的AjaxAPI、经常使用Ajax成功爆布流案例额。
第四阶段:面向对象进阶
面向对象终极篇:从内存角度到了解JS面向对象、基本类型、复杂类型、原型链、ES6中的面向对象、属性读写权限、设置器、访问器。
面向对象三大特色:承袭性、多态性、封装性、接口。
设计形式:面向对象编程思想、单例形式、工厂形式、战略形式、观察者形式、模板方法形式、代理形式、装璜者形式、适配器形式、面向切面编程。
第五阶段:封装一个属于自己的框架
框架封装基础:事情流、冒泡、捕捉、事情对象、事情框架、选用框架。
框架封装中级:静止原理、单物体静止框架、多物体静止框架、静止框架面向对象封装。
框架封装初级和补充:JQuery框架雏形、可裁减性、模块化、封装属于传智自己的框架。
第六阶段:模块化组件开发
面向组件编程:面向组件编程的方式、面向组件编程的成功原理、面向组件编程实战、基于组件化思想开发网站运行程序。
面向模块编程:AMD设计规范、CMD设计规范、RequireJS,LoadJS、淘宝的SeaJS。
第七阶段:干流的盛行框架
Web开发上班流:GIT/SVN、Yeoman脚手架、NPMer依赖治理工具、Grunt/Gulp/Webpack。
MVC/MVVM/MVW框架、、Knockout/Ember。
罕用库、、。
第八阶段:HTML5原生移动运行开发
Cordova:WebApp/NativeApp/HybirdApp简介、Cordova简介、与PhoneGap之间的相关、开发环境搭建、Cordova实战(创立名目,性能,编译,调试,部署颁布)。
Ionic:Ionic简介和同类对比、模板名目解析、经常出现组件及经常使用、联合Angular构建APP、常奏成果(下拉刷新,上拉加载,侧滑导航,选项卡)。
React Native:React Native简介、React Native环境性能、创立名目,性能,编译,调试,部署颁布、原生模块和UI组件、原生罕用API。
HTML5 :HTML5 中国产业联盟、HTML5 Plus Runtime环境、HBuilder开发工具、MUI框架、H5 开发和部署。
第九阶段: 全栈开发:
极速入门开展、生态圈、、Linux/Windows/OS X环境性能、REPL环境和控制台程序、异步编程,非阻塞I/O、模块概念,模块治理工具、开发流程,调试,测试。
外围模块和对象:全局对象global,process,console,util、事情驱动,事情发射器、加密解密,门路操做。
祝你学有所成!