我有一个图表指令,单击条形图时,我将值发送到控制器。
// on click of bar chart emitting distict name
function onSeriesClick(e) {
scope.$emit('districtIdClicked', e.category);
scope.$apply();
}
在控制器中。
// Passing values to map directive clicked District ID
$scope.clickedDistrictId = null;
console.log($scope.clickedDistrictId);
var lis = $scope.$on('districtIdClicked', function (event, data) {
console.log(data);
$scope.clickedDistrictId = data;
});
$scope.$on('$destroy', function () {
lis();
});
在这里,我列出了他的值,我想再次传递给另一个指令。所以我分配一个scope
,然后我scope
在另一个看这个directive
。
// functionality for If District is not in visible on map, it should zoom out to show the selected district.
scope.$watch('clickedDistrictId', function (selectedDistrictID) {
if (scope.districtBoundaryData !== undefined) {
updateMapSetDistrictPolygon(voltageMap, scope.districtBoundaryData, selectedDistrictID);
}
});
问题是我无法销毁该值(直到我将转到不同的页面)。如果在单击图表栏上它具有相同的值,则将值发送到控制器但无法在另一个指令中观看,
有什么方法可以显式破坏作用域的值吗?