2
การสื่อสารระหว่างคำสั่งซ้อน
ดูเหมือนจะมีวิธีการสื่อสารค่อนข้างน้อยระหว่างคำสั่ง สมมติว่าคุณมีคำสั่งซ้อนกันซึ่งคำสั่งภายในต้องสื่อสารบางสิ่งกับภายนอก (เช่นถูกเลือกโดยผู้ใช้) <outer> <inner></inner> <inner></inner> </outer> จนถึงตอนนี้ฉันมี 5 วิธีในการทำเช่นนี้ require: คำสั่งผู้ปกครอง innerสั่งสามารถต้องouterสั่งซึ่งสามารถเปิดเผยวิธีการบางอย่างเกี่ยวกับการควบคุมของตน ดังนั้นในinnerความหมาย require: '^outer', link: function(scope, iElement, iAttrs, outerController) { // This can be passed to ng-click in the template $scope.chosen = function() { outerController.chosen(something); } } และในouterตัวควบคุมของคำสั่ง: controller: function($scope) { this.chosen = function(something) { } } $emit …