中岁颇好道,晚家南山陲。兴来美独往,胜事空自知。一些风景再好,终不属于自己;有些情感,路过交错,已然是最好的结局。
AngularJS双向绑定和依赖反转
一、双向绑定:
UI<-->数据
数据->UI (数据改变UI跟着变)
UI->数据 (UI改变数据跟着变)
数据改变->UI改变原理:
监听数据是否改变,如果改变更新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>
二、依赖注入:
函数可以自己决定需要什么数据或者多小个数据,而不是外面传什么就用什么。
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>
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
到此这篇关于AngularJS双向绑定和依赖反转实例详解就介绍到这了。生活总是这样,不能叫人处处都满意。但我们还要热情地活下去。人活一生,值得爱的东西很多,不要因为一个不满意,就灰心。更多相关AngularJS双向绑定和依赖反转实例详解内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!