vue2基础知识

  1. Vue中的data为什么是一个函数,不是对象?
    • 函数使得每个组件实例有自己的作用域,每个实例相互独立,不会相互影响。对象是引用数据类型,每个组件里面的data都是存储在同一个地址,一个数据改变了其他也会改变。
  2. Vue2生命周期函数各阶段对应事情:
    • BeforeCreate => Created => BeforeMount => Mounted => BeforeUpdate => updated => Beforedestory => Destoryed
    • 开始创建、初始化数据、编译模板、挂载DOM—>渲染、更新—>渲染、卸载
  3. Vue组件通讯:
    • 父子组件:
      • 父传子:通过在子组件中prop注册,定义父组件传进来的属性。父组件中可以直接传该属性的值,也可以动态绑定:值。子组件中可通过this.访问到该属性。
      • 子传父:在子组件中通过事件触发this.$emit(‘事件名’, 值),父组件通过一个监听器用子组件传过来的事件名@事件名=’函数名’,通过用函数参数(val)来接受子组件传过来的值;或者通过@事件名=’属性名 + = e v e n t ’,用 event’,用 event,用event来访问到抛出的这个值。
      • “双向绑定”:通过“updata:属性名”来触发事件,按正常的子组件中通过prop来定义接收值,和通过事件触发this.$emit()来向父组件传值;父组件中通过修饰符.sync来接收和传值,绑定在组件中:属性名.sync=”属性”来进行。
    • 兄弟组件:
      • 以父组件为中介,像子传父、父传子的形式进行通讯
      • 创建一个总线文件bus.js,兄弟组件都引入该文件
  4. vue-router
    • history和hash两种模式的区别
      • history拥有html5中新增的pushState()和replaceState()方法,pushState方法一直会把记录添加到栈;
      • hash在地址栏URL中多了一个#字符。
      • history模式的URL必须做到路由全覆盖,否则会返回404
      • hash模式只有#字符之前的内容会包含在请求中,即使没有路 由全覆盖,也不会返回404
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值