1. استخدام بسيط من $ watch
$watch هي وظيفة scope تستمع لتغييرات النموذج ، والتي سوف تخطرك عندما تتغير أجزاء من النموذج الخاص بك.
Watch (WatchExpression ، المستمع ، Objectequality) ؛
وصف كل معلمة كما يلي:
WatchExpression: الكائن للاستماع إليه ، يمكن أن يكون تعبيرًا زاويًا مثل "الاسم" ، أو وظيفة مثل function(){return $scope.name} .
المستمع: الوظيفة أو التعبير الذي سيتم استدعاؤه عند تغيير watchExpression ، يتلقى 3 معلمات: newValue (قيمة جديدة) ، oldValue (القيمة القديمة) ، scope (مرجع إلى النطاق)
ObjectEquality: سواء كنت للاستماع بعمق ، إذا تم ضبطها على TRUE ، فإنها تخبر Angular بالتحقق من التغييرات في كل خاصية في الكائن المراقب. إذا كنت ترغب في مراقبة العناصر الفردية للمصفوفة أو خاصية الكائن بدلاً من القيمة العادية ، فيجب عليك استخدامها
خذ كستناء:
$ scope.name = 'hello' ؛ var watch = $ scope. $ watch ('name' ، function (newValue ، oldvalue ، scope) {console.log (newValue) ؛ console.log (oldvalue) ؛}) ؛ $ timeout (function () {$ spec.name = "world" ؛} ، 1000) ؛2. استمع إلى التغييرات في قيم متعددة
الموقف المعتاد هو الاستماع إلى التغييرات في القيمة واحدة في وقت واحد من خلال $watch() ، والتي بالطبع معظم المواقف راضية. ومع ذلك ، من خلال قراءة شرح الموقع الرسمي لـ $watch() ، يحتوي $watch() على معلمة ثالثة ، والمعلمة الثالثة هي نوع منطقي ، مما يشير إلى ما إذا كان يجب الاستماع بعمق. مثال على المراقبة العميقة هو ما إذا كان يجب مقارنة خصائص الكائن.
وبهذه الطريقة ، يمكننا مراقبة التغييرات في قيم متعددة في وقت واحد.
نموذج الرمز
var app = Angular.module ("watchapp" ، []) .Controller ("WatchController" ، ["$ Scope" ، function ($ scope) {$ scope.object = {} ؛لخص
ما ورد أعلاه هو كل شيء عن كيفية استشارة AngularJS إلى قيم متعددة تتغير مرة واحدة. هل تعلمت ذلك؟ آمل أن يكون محتوى هذه المقالة مفيدًا لدراسة الجميع والعمل. إذا كان لديك أي أسئلة ، فيمكنك ترك رسالة للتواصل. شكرا لك على دعمك إلى wulin.com.