vue2.0题目

2020-08-13  本文已影响0人  JennyGao66

1 .v-show和v-if的区别

为何在v-for中用key

vue的生命周期

单组件生命周期

父子组件生命周期

  1. 加载渲染过程
    父beforeCreate->父created->父beforeMount->子beforeCreate->子created->子beforeMount->子mounted->父mounted
  2. 子组件更新过程
    父beforeUpdate->子beforeUpdate->子updated->父updated
  3. 父组件更新过程
    父beforeUpdate->父updated
  4. 销毁过程
    父beforeDestroy->子beforeDestroy->子destroyed->父destroyed
    转载 https://www.cnblogs.com/status404/p/8733629.html

组件如何通讯

组件渲染和更新的过程

组件渲染和更新的过程.png

双向数据绑定 v-model 实现原理

computed 特点

为何组件的data必须是一个函数

vue编译后实际上一个class类,用的时候相当于实例化,实例化data在闭包里

ajax请求应该放在哪个周期里?

如何将组件所有props传递给子组件(优先级不高)

如何自己实现v-model

<template>
  <input type="text" :value="$emit('change',$emit.target.value)">
  <!-- change 和 model.event 对应起来即可 -->
</template>
<script>
export default {
  model:{
    props:"text",//对应到props 的text
    event:'change'
  },
  props:{
    text:String
  }
}
</script>

多个组件相同逻辑,如何处理

何时使用异步组件

何时使用keep-alive

何时使用beforeDestory

什么是作用域插槽

<template>
  <a :href='url'> 
    <slot :website="website">
      {{website.subTitle}}
    </slot>
  </a>
</template>
<script>
export default {
  props:['url'],
  data(){
    return {
      website:{
        url:'www.baidu.com',
        title:"百度",
        subTitle:"贴吧"
      }
    }
  }
}
</script>
<template>
  <ScopedSlotDemo :url='website.url'>
    <template v-slot='slotProps'>
      <!-- slotProps 名字可自定义 -->
      {{slotProps.website.title}}
    </template>
  </ScopedSlotDemo>
</template>

vuex 中 action和 mutation 有何区别?

vue-router 常用路由模式

如何配置vue-router 异步加载

export default new Router({
  routers:[
    {
      path:'/',
      component:()=>import('./../components/Navigator')
    },
    {
      path:'/feedback',
      component:()=>import('./../components/feedback')
    },
  ]
})

请用vnode描述一个DOM解构

  <div id='div1' class='container'>
    <p>vdom</p>
    <ul style='font-size:20px'>
      <li>a</li>
    </ul>
  </div>
{
  tag:'div',
  props:{
    className:'container',
    id:'div1'
  },
  children:[
    {
      tag:'p',
      children:'vdom'
    },
    {
      tag:'ul',
      props:{style:'font-size:20px'},
      children:[{
        tag:'li',
        children:'a'
      }]
    }
  ]
}

监听data的核心api Object.defineProperty

vue如何监听数组变化

请描述响应式原理

地方法算法的时间复杂度

简述diff算法过程

vue为何是异步渲染,$nextTick 何用?

vue常见性能优化方法

上一篇 下一篇

猜你喜欢

热点阅读