Vue基础第一天

Vue基础第一天

MVVM模型

请添加图片描述
请添加图片描述
请添加图片描述

双向绑定的实现

V->M:
事件监听
M->V:
特性set、get $set
请添加图片描述
请添加图片描述

webpack编译

请添加图片描述
请添加图片描述

数据丢失

请添加图片描述
请添加图片描述
请添加图片描述

计算属性数据

请添加图片描述

插值和属性绑定

请添加图片描述
请添加图片描述

请添加图片描述

单例

单例模式的核心是:确保只有一个实例,并且提供全局访问

全局模式不是单例模式,但在Javascript开发中,我们经常会把全局变量当作单例来使用。例如:

var a={};
当用这种方式创建对象a的时候,对象a确实是独一无二的。如果变量a被声明在全局作用域中,则我们可以在代码中的任意位置使用这个变量,全局变量提供给全局访问是理所应当的。这样就满足了单例模式的两个条件。

但是全局变量存在很多问题,它很容易造成命名空间的污染。
使用命名空间
最简单的方式就是用对象字面量的方式:

var namespace={
    a:function(){
        alert(1)
    },
    b:function(){
        alert(2)
    }
}
这样把a,b限制在命名空间namespace中,通过访问命名空间来获取单例a,既可以全局访问,并且全局只有一个,还可以减少全局变量的次数,减少全局变量的命名污染

使用闭包创建私有变量
这种方法把一些变量封装在闭包内部,只是暴露一些接口与外界通信

var user=(funtion(){
    var _name='sven',
        _age=29;
    return {
        getUserInfo: function(){
            return _name+'-'+_age
        }
    }
})();
我们用下划线来约定私有变量_name和_age,他们被封装在闭包产生的作用域中,外部是访问不到这两个变量的,这就避免了对全局的命令污染。

惰性单例
惰性单例指的是在我们需要的时候才创建对象实例。惰性单例是单例模式中的重点, 如下所示:

var getSingle=function(fn){
    var result;
    return function(){
        return result||(result = fn.apply(this,arguments))
    }
}
在我们使用的时候先传入一个需要执行的函数,result变量因为身在闭包中,它永远不会被销毁,在将来的请求中,如果result已经被赋值,那么就直接返回这个值,如果不存在就调用传入进来的fn函数方法。

这样不管你调用几次方法,只要result只会被执行一次。

插值过滤器

请添加图片描述
请添加图片描述

v-clock取消闪烁

请添加图片描述

单选多选框的双向绑定

请添加图片描述
请添加图片描述

数据监听器

请添加图片描述
请添加图片描述

DOM事件

请添加图片描述
请添加图片描述

事件修饰符

请添加图片描述
请添加图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值