Rumah >hujung hadapan web >tutorial js >pengalaman penggunaan angular.bind_AngularJS
bersudut.mengikat
Penjelasan: Mengembalikan fungsi fn yang memanggil diri (self mewakili ini dalam fn Parameter args (*) boleh diberikan kepada fn Fungsi ini juga dipanggil operasi tempatan untuk membezakan fungsi tersebut.
Format: angular.bind(self,fn,args);
diri: objek objek; objek konteks fn, yang boleh dipanggil dengan ini dalam fn
fn: fungsi; kaedah mengikat
args: parameter dihantar ke fn
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!!!
Mari kita bincangkan tentang pemahaman kita tentang angular.bind~
bind bermaksud mengikat seperti namanya, jadi jika kita ingin mengikat A kepada B, maka mesti ada dua entiti, A dan B. Dua entiti yang diperlukan di sini ialah objek dan fungsi. Jadi bagaimana untuk mengikatnya? Pemahaman @Beast adalah untuk "mengikat" objek ini untuk pelaksanaan Pada masa ini, ini daripada obj Bagi parameter ketiga, ia bergantung kepada keperluan untuk memasukkan parameter, maka kita Anda boleh meletakkan parameter ketiga angular.bind, iaitu parameter yang diluluskan ke dalam fungsi fn.
Cara menulis pertama dalam kes adalah untuk melepasi parameter yang diperlukan oleh fn semasa mentakrifkan pengikatan, dan menggunakannya secara langsung semasa membuat panggilan melaksanakan. Menghantar parameter ke fn mempunyai kesan yang sama
Bagi ayat-ayat Inggeris di atas (walaupun hanya ada 2 ayat), jika ada kesilapan, bermakna kami amat menyayangi bahasa ibunda kami - Cina jika anda tidak sengaja menulisnya dengan betul, maka tolong sokong Tepukan ini kepada B yang berpura-pura menjadi 66666~
Pada penghujung artikel, mari kita lihat contoh
<!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--带参数 var f = angular.bind(self, //绑定对象,作为函数的上下文 //被绑定的函数 function(age){ alert(this.name + ' is ' + age + ' !'); }, //绑定的参数,可省略 '15' ); f();//调用绑定之后的function //示例2--不带参数 var m = angular.bind(self, //绑定对象,作为函数的上下文 //被绑定的函数 function(age){ alert(this.name + ' is ' + age + ' !'); } //省略参数 ); m(3);//调用传参的函数 </script> </body> </html>