angular中的用到的幾種方法總結


Angular的方法不在於多,在於是否能夠用得着。下面會詳細講解angular中的一些方法。

  如果原生的JS寫在head里經常用到 window.onload ,意思是頁面加載完成后執行,在angular中有不同的寫法  ---- angular.element(document).ready()  

  angular.bind()  可以調用一些函數;

  function show(){

    alert(this+"調用了show")
  }
  var c=angular.bind("c",show);
  c(); 

  angular.lowercase() 與 angular.uppercase()    ------可以轉小寫、大寫。

  angular.forEach()  循環一組數組。也是可以寫第三個參數,則可以添加到新數組中。

  var arr=['apple','banana','orange','pear'];

  var arr1=[];
  angular.forEach(arr,function(value,key){
  console.log(value+":"+key);      //value是數組的數值,key則是數值的下標;

  console.log(arr1);    //新的數組

  },arr1)

  嵌套中的父級向子級發送數據 ----$broadcast() 第一個是自定義名,第二個是要發送的數值   子級向父級用的是 $emit()  方法一樣。

  父級 $scope.$broadcast('newdata',$scope.c1)

  子級 $scope.$on('newdata',function(event,data){

      $scope.c2=data+1
     })

 

  定時器不同 ----$interval()   $timeout    清除定時器用$interval.cancel()。

  config() 先執行  run() 后執行  執行順序不同。

                        angular熟練這些方法。

 

  //擴展知識

  

  過濾器也是可以寫在js中。----number保留一位

  var app=angular.module('atr',[]);

  app.run(['$rootScope','$filter',function($rootScope,$filter){
    $rootScope.a=12;
    $rootScope.name=$filter('number')(1234567890.1234,1)
  }])

  合並兩個數組。------extend()  參數是需要合並的數組。

  angular.toJson()  -----object格式轉換成string格式。

  angular.fromJson()  -----string格式的數據轉換成object

  ng-app這個指令比較特殊,一個頁面只能出現一個作用域。

  我還是有辦法可以創建多個作用域的。   

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<script src="../../angular/angular.min.js"></script>
<script>
var app1=angular.module('mk1',[]);
var app2=angular.module('mk2',[]);
app1.controller('text1',function($scope){
$scope.a=12
});
app2.controller('text2',function($scope){
$scope.b=20
});
var div=document.getElementsByTagName('div');
angular.element(document).on('click',function(){
angular.bootstrap(div[0],['mk1']);
angular.bootstrap(div[1],['mk2']);
})
</script>
</head>
<body>
<div ng-controller="text1">
{{a}}
</div>
<div ng-controller="text2">
{{b}}
</div>
</body>
</html>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM