AngularJS 从1.2迁移到1.3的变动记录(一)

这里面只是本人项目过程中遇到的变动,不代表AngularJS 1.2升级到1.3之后所有的变动记录,大家如果想看官方的所有变动记录请看https://docs.angularjs.org/guide/migration


  1. $httpProvider.responseInterceptors: 1.3之后这个属性就删除了。只能用interceptors,在迁移的过程中最好注意下逻辑。(ps:踩过坑,花了两天查源码最后发现迁移的时候逻辑出现问题了。)
  2. angular-scroll: 版本0.6.2,没有了scroller这个service,换成了$document这个service。
  3. checkbox: ng-true-value,ng-false-value里面只能放常量,比如数字或者字符'Y','N'记得字符常量一定要用引号包裹。
  4. $observe:除了不再返回一个observer function外,它的另外一个变化应该是,它不再对未设置的attr调用回调函数,例如:
<div directive-name attr-name="xxx"> // 相应的组件元素
link: function(scope, elm, attr) {
    attr.$observe('attrName', function(value){// 初始化的时候马上被调用
        console.log(value); 
    });
    attr.$observe('abc', function(value){ //这个情况下回调函数不会被调用,因为相应的组件上没有设置相应的attribute
        consoel.log(value);
    });
}

这最经常出现在那种可配置的组件上,例如tooltip,我们经常要设置它的title,position等,不过它也有自己默认的attribute值。升级到1.3之后,我们不能利用attr.$observe来做初始化配置了。

收藏 0分享浏览 3087
7年前
跟帖

我们不能利用attr.$observe来做初始化配置了。那我们应该用什么做配置呢?

沙发
说几句
广告位 点击查看投放指南

我的收藏