zoukankan      html  css  js  c++  java
  • vue1.0到2.0

    1. 在每个组件模板,不在支持片段代码

    组件中模板:
    之前:
    <template>
    <h3>我是组件</h3><strong>我是加粗标签</strong>
    </template>
    现在: 必须有根元素,包裹住所有的代码
    <template id="aaa">
    <div>
    <h3>我是组件</h3>
    <strong>我是加粗标签</strong>
    </div>
    </template>

    Vue.component(组件名称,{ 在2.0继续能用
    data(){}
    methods:{}
    template:
    });

    2.0推出一个组件,简洁定义方式:
    var Home={
      template:'' -> Vue.extend()
    };

    var Home={ //这是2.0组件
    template:'#aaa'
    }; //Vue.extend()

    Vue.component('my-aaa',Home);

    3.生命周期

    之前:
    init
    created
    beforeCompile
    compiled
    ready √ -> mounted
    beforeDestroy
    destroyed
    现在:
    beforeCreate 组件实例刚刚被创建,属性都没有
    created 实例已经创建完成,属性已经绑定
    beforeMount 模板编译之前
    mounted 模板编译之后,代替之前ready *
    beforeUpdate 组件更新之前
    updated 组件更新完毕 *
    beforeDestroy 组件销毁前
    destroyed 组件销毁后

    3. 循环
    2.0里面默认就可以添加重复数据

    arr.forEach(function(item,index){

    });

    去掉了隐式一些变量
    $index $key

    之前:
    v-for="(index,val) in array"
    现在:
    v-for="(val,index) in array"

    4. track-by="id"
    变成
    <li v-for="(val,index) in list" :key="index">

    :key="index"  //提升循环的性能

    5. 自定义键盘指令
    之前:Vue.directive('on').keyCodes.f1=17;

    现在: Vue.config.keyCodes.ctrl=17

    6. 过滤器
    之前:
    系统就自带很多过滤
    {{msg | currency}}
    {{msg | json}}
    ....
    limitBy
    filterBy
    .....
    一些简单功能,自己通过js实现

    到了2.0, 内置过滤器,全部删除了


    lodash 工具库 _.debounce(fn,200)


    自定义过滤器——还有
    但是,自定义过滤器传参

    之前: {{msg | toDou '12' '5'}}
    现在: {{msg | toDou('12','5')}}

    组件通信

    vm.$emit()

    vm.$on()

    父组件和子组件

    组件通信:
    vm.$emit()
    vm.$on();

    父组件和子组件:

    子组件想要拿到父组件数据:
    通过 props

    之前,子组件可以更改父组件信息,可以是同步 sync
    现在,不允许直接给父级的数据,做赋值操作

    问题,就想更改:
    a). 父组件每次传一个对象给子组件, 对象之间引用 √
    b). 只是不报错, mounted中转

    可以单一事件管理组件通信: vuex
    var Event=new Vue();

    Event.$emit(事件名称, 数据)

    Event.$on(事件名称,function(data){
    //data
    }.bind(this));

    饿了么团队开源一个基于vue 组件库
    elementUI PC
    MintUI 移动端

    日常所遇,随手而记。
  • 相关阅读:
    设计模式总结
    JWT、OAUTH2与SSO资料补充
    dajie项目的坑
    fw-cloud-framework项目配置、启动问题
    Shiro源码分析
    (转)JPA & Restful
    Spring Boot以War包启动
    (转)Spring & SpringMVC学习
    MySQL的数据类型(二)
    MySQL的数据类型(一)
  • 原文地址:https://www.cnblogs.com/zhihou/p/7158910.html
Copyright © 2011-2022 走看看