zoukankan      html  css  js  c++  java
  • 关于 angular 小心得

    心得1:

    //控制器里面的代码会晚一些执行

    setTimeout(function(){

    //获取对象的scope

     var ele = document.querySelector('[ng-controller=mycontroller]');
     var $scope = angular.element(ele).scope();
     $scope.myFunc();
    
    },10)
    

      

    控制器里面的代码会延迟执行,所以同一个js文件中,如果要通过DOM元素查找到对应控制器上的scope然后调用方法时,需要将查找的代码延迟执行。

    心得2:

    每当申明一个控制器都需要将$scope注入到控制器中,比如

    var app = angular.module("myApp",[]);
    
    app.controller("myController",function($scope){
    
      $scope.name = "Mona";
    
    })
    

      

    其实,可以将上述代码中的$scope用this代替,即

    var app = angular.module("myApp",[]);
    
    app.controller("myController",function(){
    
      this.name = "Mona";
    
    })
    

      

    angular还有链式写法,将上述代码改成下面的写法:

    angular.module("myApp",[]).controller("myController",function($scope){
    
    $scope.name = "Mona";
    
    })
    

      

    心得3:

    angular中的一些常识

    ng-class = "{active:isSelected(1)}"

    此时angular可以监听class为active的样式类,当active冒号后面的值为true时active有效,为false时无效

    ng-show = "isSeleted(1)"

    此时 angular 可以控制绑定有ng-show的DOM元素的显示和隐藏,当ng-show=" a "  中a的值为true时就显示该DOM元素,当a的值为false时隐藏该DOM元素。

    感谢您的阅读,如果文中有任何技术上的错误或不妥,烦请留言指出,我会尽快更正。
  • 相关阅读:
    OI无关--关于侧边栏
    Codeforces Round #528 div1
    BZOJ 3531: [Sdoi2014]旅行
    BZOJ 4538: [Hnoi2016]网络
    Codeforces Round #527 (Div. 3)
    Avito Cool Challenge 2018
    Educational Codeforces Round 56 (Rated for Div. 2)
    Codeforces Round #526 (Div. 1)
    2018-2019 Russia Open High School Programming Contest (Unrated, Online Mirror, ICPC Rules, Teams Preferred)
    Codeforces Round #525 (Div. 2)
  • 原文地址:https://www.cnblogs.com/MonaSong/p/5088676.html
Copyright © 2011-2022 走看看