AngularJS雙向綁定和依賴反轉實例詳解
更新時間:2017年04月15日 17:00:18 投稿:lqh
這篇文章主要介紹了AngularJS雙向綁定和依賴反轉實例詳解的相關資料,需要的朋友可以參考下
AngularJS雙向綁定和依賴反轉
一、雙向綁定:
UI<-->數據
數據->UI (數據改變UI跟著變)
UI->數據 (UI改變數據跟著變)
數據改變->UI改變原理:
監(jiān)聽數據是否改變,如果改變更新UI數據。
UI改變->數據改變原理:
<html>
<body>
<input type="text" name="name" value="" id="text1" ng_model="a">
<script>
window.onload = function(){
var a='';
var oTxt = document.getElementById('text1');
oTxt.oninput = function(){ //UI值改變數據改變
a = oTxt.value;
}
}
</script>
</body>
</html>
二、依賴注入:
函數可以自己決定需要什么數據或者多小個數據,而不是外面?zhèn)魇裁淳陀檬裁础?/p>
2.1、調用者決定給多小個參數
<script>
function show(a,b,c){
console.log(arguments.length);
}
show(1); //調用者只給1個參數,調用者決定參數的給予。
</script>
2.2、依賴注入(依賴反轉):函數要求要多小參數,就給多小。 就像show(a,b,c)要求3個參數
<script>
function show(a,b,c){
console.log(arguments.length);
}
var scope = {a:12,b:15,c:99,qq:55,i:99}; //假設是函數需要的參數
//實現依賴反轉二個步驟
//1、知道show要什么參數
var str = show.toString();
str=str.split('{')[0].match(/\(.*)\/)[0].replace(/\S+/g,'');
str=str.substring(1,str.length-1);
var arr=str.split(',');
//2、給它相應值
var args=[];
for(var i=0;i<arr.length;i++){
args[i]=scope[arr[i]];
}
console.log(args);
show.apply(null,args);
</script>
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
相關文章
詳解使用KeyValueDiffers檢測Angular對象的變化
這篇文章主要為大家介紹了KeyValueDiffers檢測Angular對象的變化使用詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-04-04
AngularJS創(chuàng)建一個上傳照片的指令實例代碼
這篇文章主要介紹了AngularJS創(chuàng)建一個上傳照片的指令實例代碼,需要的朋友可以參考下2018-02-02

