angular.bind使用心得
angular.bind
解釋:返回一個調(diào)用self的函數(shù)fn(self代表fn里的this).可以給fn提供參數(shù)args(*).這個功能也被稱為局部操作,以區(qū)別功能。
格式:angular.bind(self,fn,args);
self:object 對象; fn的上下文對象,在fn中可以用this調(diào)用
fn:function; 綁定的方法
args:傳入fn的參數(shù)
var obj = { name: "Any" }; var fn = function (Adj) { console.log(this.name + "is a boy!!! And he is " + Adj + " !!!"); }; var f = angular.bind(obj, fn, "handsome"); f();//Any is a boy!!! And he is handsome!!! var t = angular.bind(obj, fn); t("ugly");// Any is a boy!!! And he is ugly!!!
接下來說說對angular.bind的理解吧~
bind顧名思義綁定的意思,那么假如我們要把A綁到B上,那么必須又有A和B這2個存在體。這里需要的2個存在體就一個對象和一個函數(shù)。那么怎么綁?@野獸的理解是把對象“綁”到函數(shù)的this上去執(zhí)行,這時候fn的this就等于obj了,至于第三個參數(shù),可有可無,看需求,如果函數(shù)需要傳入?yún)?shù),那么我們可以把angular.bind的第三個參數(shù)放上去,這就是傳入fn函數(shù)的參數(shù)了。
案例中第一種寫法是定義綁定的時候就把fn所需的參數(shù)傳進去了,調(diào)用的時候直接用,而案例中第二種寫法是先綁定,在調(diào)用執(zhí)行的時候再給fn傳參,效果是一樣的
對于那上面的英文句子(好吧,雖然只有2句),如果有寫錯了,那么說明深深的愛著我們的母語-中文;如果一不小心寫對了,那么請為這個裝的66666的B鼓掌~
文章最后,我們來看個實例吧
<!DOCTYPE HTML> <html ng-app> <head> </head> <script src="http://code.angularjs.org/1.2.3/angular.min.js"></script> </body> <script> var self = {name:'boyi'}; //示例1--帶參數(shù) var f = angular.bind(self, //綁定對象,作為函數(shù)的上下文 //被綁定的函數(shù) function(age){ alert(this.name + ' is ' + age + ' !'); }, //綁定的參數(shù),可省略 '15' ); f();//調(diào)用綁定之后的function //示例2--不帶參數(shù) var m = angular.bind(self, //綁定對象,作為函數(shù)的上下文 //被綁定的函數(shù) function(age){ alert(this.name + ' is ' + age + ' !'); } //省略參數(shù) ); m(3);//調(diào)用傳參的函數(shù) </script> </body> </html>
相關(guān)文章
Angular6 Filter實現(xiàn)頁面搜索的示例代碼
這篇文章主要介紹了Angular6 Filter實現(xiàn)頁面搜索的示例代碼,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-12-12AngularJS 與Bootstrap實現(xiàn)表格分頁實例代碼
這篇文章主要介紹了AngularJS 與Bootstrap實現(xiàn)表格分頁的相關(guān)資料,并附實例代碼和實現(xiàn)效果圖,需要的朋友可以參考下2016-10-10AngularJs Using $location詳解及示例代碼
本文主要介紹AngularJs Using $location的知識資料,這里整理了相關(guān)的資料,及簡單示例代碼,有興趣的小伙伴可以參考下2016-09-09Angular2使用SVG自定義圖表(條形圖、折線圖)組件示例
這篇文章主要介紹了Angular2使用SVG自定義圖表(條形圖、折線圖)組件,涉及Angular結(jié)合svg進行圖表繪制的相關(guān)操作技巧,需要的朋友可以參考下2019-05-05