Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Berkongsi Pembolehubah Secara Berkesan Antara Pengawal AngularJS yang Tidak Berkaitan?
Melalui Pembolehubah Antara Pengawal AngularJS
Dalam AngularJS, mengurus aliran data antara pengawal boleh mencabar, terutamanya apabila ia tidak bersarang. Begini cara anda boleh mencapai perkongsian berubah-ubah merentas pengawal:
Menggunakan Perkhidmatan
Perkhidmatan ialah cara yang berkesan untuk berkongsi data antara komponen. Cipta perkhidmatan dan masukkannya ke dalam pengawal yang memerlukan akses kepada pembolehubah kongsi:
angular.module('myApp') .service('sharedProperties', function () { var property1 = 'First'; return { getProperty1: function () { return property1; }, setProperty1: function(value) { property1 = value; } }; });
Dalam pengawal anda, suntikan perkhidmatan dan gunakan kaedahnya untuk mengakses dan mengubah suai pembolehubah kongsi:
function Ctrl2($scope, sharedProperties) { $scope.prop2 = 'Second'; $scope.both = sharedProperties.getProperty1() + $scope.prop2; }
Mengikat kepada Nilai Dikongsi
Untuk kemas kini masa nyata nilai dikongsi merentas pengawal, anda boleh ikat pada sifat objek dan bukannya jenis primitif:
angular.module('myApp') .service('sharedProperties', function () { return { property1: { Property1: 'First' } }; });
Dalam pengawal anda, ikat pada sifat objek dan bukannya nilai primitif:
function Ctrl2($scope, sharedProperties) { $scope.prop2 = 'Second'; $scope.both = sharedProperties.property1.Property1 + $scope.prop2; }
Petua:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Berkongsi Pembolehubah Secara Berkesan Antara Pengawal AngularJS yang Tidak Berkaitan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!