1,v-if和v-show的作用是什么?有什么区别?

  v-if:        创建---删除,没有元素。切换开销大。适合不频繁切换的情况用。

      例子:制作搜索框,导航栏和搜索框重叠的两个框,点击搜索图片按钮创建输入框,再点击按钮删除输入框。不占位置。

  v-show: 显示---隐藏,有元素。   切换频繁的话用这。只是初始渲染开销大。如需求,点击按钮显示隐藏盒子。

 2,vue的生命周期:8大

  beforecreate---created---beforeMount---mounted---beforeUpdate---updated---beforeDestroy---destroy

2-1:Vue 的父组件和子组件生命周期钩子函数执行顺序?

  Vue 的父组件和子组件生命周期钩子函数执行顺序可以归类为以下 4 部分:

  加载渲染过程

  1,父 beforeCreate -> 父 created -> 父 beforeMount -> 子 beforeCreate -> 子 created -> 子 beforeMount -> 子 mounted -> 父 mounted

  2,父组件更新过程

    父 beforeUpdate -> 父 updated

  3,子组件更新过程

    父 beforeUpdate -> 子 beforeUpdate -> 子 updated -> 父 updated

  4,销毁过程

    父 beforeDestroy -> 子 beforeDestroy -> 子 destroyed -> 父 destroyed

3,封装过哪些组件?

   (个人)封装过分页,哈哈哈

4,父子组件怎么通信的 ? 兄弟组件怎么通信的?

   总的来说父传子是通过props,子传父是通过$emit。

       举个父传子例子:父组件传值给子组件,即父组件去改变子组件的数据,比如文字。

父:

  0,首先引入子组件,import...

  1,  设置components:{ BtnStyle  } 节点,,注册子组件。

  2:return 返回真实数据:toMsg:“这是数据”。

  3,再在视图层把子组件用标签的形式展示出来,想改变子组件还得绑定好数据传给子组件:  <BtnStyle :toMsg="toMsg"></BtnStyle>

子:绑定数据到父组件,让父组件可以随时修改。

  0,暴露name,方便找到这个子组件。父组件也可以暴露自己组件的名字。

  1,设置节点接收父组件传递过来的数据:  prop:["toMsg"]

  2,不用设置return值,因为值在父组件设置了。

  3,最后在视图层需要文字处,用花括号填上动态数据:<h1> {{toSonData}} </h1>

  子传父:待补。

4,mvvm框架是啥?它和其它框架(jquery)的区别是什么?哪些场景适合?

  一个model+view+viewModel框架,数据模型model,viewModel连接两个

  区别:vue是数据驱动,通过数据来显示视图层而不是DOM节点去操作。

  场景:数据操作比较多的场景,更加便捷。。。。

5,什么是 MVVM , 和 MVC 是什么区别, 原理是什么?

  MVVM:数据模型数据双向绑定,view和model之间没有联系,通过 viewModel进行交互,而且Model和ViewModel之间的交互是双向的,

  因此视图的数据的变化会同时修改数据源,而数据源数据的变化也会立即反应view。

  MVC:是单向通信。

6,class与style 如何绑定实现动态改变样式 ?

  1,绑定类,用三元判断::class="[isActive?class1:class2]"

  2,返回三个值,1 是 isActive是true还是false? 以及两个类对应的类名。:class1:‘a’,.....b....

  3,设置a和a的样式

  延申:如何动态绑定多个类?

  1,绑定一个动态类::class="[active?'class-'+index:'']",到时可以随意改变index的值去设置不同的类。

  2,返回两个值:active: true,  和 index:1,

  3,样式的选择器类选择器这样命名: .class-1{}

  总结: 有个JS基础的知识点:

  a=active -> true.

  a=null    -> false

  额外:

  对象的方法,不是数组的,不用三元的话要在返回值处判断

  <div v-bind:class="{ active: isActive, 'text-danger': hasError }"></div>

  data: { isActive: true, hasError: false }。

 

vue面试题专题的更多相关文章

  1. 2019前端面试系列——Vue面试题

    Vue 双向绑定原理        mvvm 双向绑定,采用数据劫持结合发布者-订阅者模式的方式,通过 Object.defineProperty()来劫持各个属性的 setter.getter,在数 ...

  2. php开发面试题---vue面试题(vue.js的好处及作用)

    php开发面试题---vue面试题(vue.js的好处及作用) 一.总结 一句话总结: 双向数据绑定:在做ajax的时候,更新实在是太方便了 用数据绑定的思想,vue可以简单写单个页面,也可以写一个大 ...

  3. Vue 面试题汇总

    Vue 面试题汇总 refs xgqfrms 2012-2020 www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!

  4. 【前端面试】Vue面试题总结(持续更新中)

    Vue面试题总结(持续更新中) 题目参考链接 https://blog.csdn.net/weixin_45257157/article/details/106215158 由于已经有很多前辈深造VU ...

  5. 法门扫地僧总结vue面试题(部分来源网络)

    Front-End 前端开发工程师面试宝典!   (本文部分有转载,不定期更新!)             前言(README.md) 本仓库是我整理的前端常见面试题,大部分由我整理,其中个别部分参考 ...

  6. Vue面试题整理

    1:什么是MVVM MVVM是是Model-View-ViewModel的缩写,Model代表数据模型,定义数据操作的业务逻辑,View代表视图层,负责将数据模型渲染到页面上,ViewModel通过双 ...

  7. vue面试题总汇

    active-class是哪个组件的属性? vue-router模块的router-link组件. 嵌套路由怎么定义? 在实际项目中我们会碰到多层嵌套的组件组合而成,但是我们如何实现嵌套路由呢?因此我 ...

  8. vue面试题!!!

    由于公司需要,需要把项目拆分,前端使用vue框架.最近面试vue总结的试题 1:mvvm框架是什么?它和其他框架的区别是什么? mvvm 全称model view viewModel,model数据模 ...

  9. 本人编写的一份前端vue面试题

    说明,此题目本人自出,做过本人所在公司的前端面试题,在此共享给大家 1. 如何在vue组件中实现v-model的功能?(只需给出关键代码) 2. 简述你知道的生命周期函数和执行时机 3. 谈谈你对计算 ...

随机推荐

  1. 阶段3 1.Mybatis_06.使用Mybatis完成DAO层的开发_1 Mybatis中编写dao实现类的使用方式-查询列表

    就是自己写实现类的方式来开发 直接finish 把之前写的CRUD的代码复制到过来. 在把之前pom.xml里面的包的依赖也复制过来 复制到当前的pom.xml内 允许自动导入 以上步骤就是复制了一个 ...

  2. RabbitMQ安装及其中遇到的问题解决方案

    参考官方文档:https://www.rabbitmq.com/install-debian.html#apt 第一步: # import PackageCloud signing key wget ...

  3. 模态框——angular

    ui-bootstrap-tpls.js库 $uibModal服务 $uibModalInstance服务 一.在angular中应用modal $uibModal 使用方法:直接注入到控制器中. . ...

  4. IntelliJ IDEA调试时,格式化显示日期变量

    格式化前: 格式化后: new java.text.SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(this); 入门常用知识: Ct ...

  5. 通过vue-router实现组件间的跳转

    三.通过VueRouter来实现组件之间的跳转提供了3种方式实现跳转:①直接修改地址栏中的路由地址 <!doctype html> <html> <head> &l ...

  6. 【HBase】五、HBase的Java接口

      HBase是Hadoop中的一个重要组件,自然也是基于Java语言开发的,因此HBase有很好的Java接口供程序员调用,通过一个例子来演示java如何使用HBase数据库.   要想在HBase ...

  7. 第三章 四大组件之Activity(一)生命周期

    1.生命周期: onCreate()->onStart()->onResume()->onPause()->onStop()->onDestroy() 2.各种状况下Ac ...

  8. 任务调度之 Quartz

    任务调度的背景 在业务系统中有很多这样的场景: 账单日或者还款日上午 10 点,给每个信用卡客户发送账单通知,还款通知.如何判断客户的账单日.还款日,完成通知的发送? 银行业务系统,夜间要完成跑批的一 ...

  9. java基础知识部分知识点

    1.Java常见的注释有哪些,语法是怎样的? 1)单行注释用//表示,编译器看到//会忽略该行//后的所文本  2)多行注释/* */表示,编译器看到/*时会搜索接下来的*/,忽略掉/* */之间的文 ...

  10. Thinkphp3.2 Redis缓存session

    Thinkphpsession缓存没有redis类库 Redis.class.php放在Library/Think/Session/Driver/下: <?php /** * +-------- ...