Angularjs 如何将参数传递给指令控制器?
嗨,我正在尝试将参数从页面传递到指令控制器。我可以将它传递给指令,但如何在指令控制器的范围内使用它。 我的指示:Angularjs 如何将参数传递给指令控制器?,angularjs,Angularjs,嗨,我正在尝试将参数从页面传递到指令控制器。我可以将它传递给指令,但如何在指令控制器的范围内使用它。 我的指示: var modalViewUrl = function ($modal) { return { restrict: 'A', // A: attribute scope: { // isolate scope 'modalViewUrl': '@', // modal view url to render the modal content
var modalViewUrl = function ($modal) {
return {
restrict: 'A', // A: attribute
scope: { // isolate scope
'modalViewUrl': '@', // modal view url to render the modal content
'modalController': '@', // modal view controller (optional)
'modalSize': '@', // modal view size (optional) sm, md, lg
'widgetId': '@'
},
link: function($scope, element, attrs){
element.bind('click', function(){
var template = '<div ng-include="\'' + 'Dashboards/' + $scope.modalViewUrl + '\'"></div>';
var modalInstance = $modal.open({
animation: true,
template: template,
size : $scope.modalSize,
controller: $scope.modalController,
});
});
}
};
}
就像在bootstrap()的示例中一样: 控制器现在可以使用它:
var widgetSettingsController = function ($scope, $rootScope, $modalInstance, DataService, myid) {
widgetSettingsController.$inject = ['$scope', '$rootScope', '$modalInstance', 'DataService', 'myid'];
var widgetSettingsController = function ($scope, $rootScope, $modalInstance, DataService) {
// Here want to use parameter widgetId
};
widgetSettingsController.$inject = ['$scope', '$rootScope', '$modalInstance', 'DataService'];
var modalInstance = $modal.open({
animation: true,
template: template,
size : $scope.modalSize,
controller: $scope.modalController,
resolve : {
myid : function() {
return $scope.widgetId;
}
}
});
var widgetSettingsController = function ($scope, $rootScope, $modalInstance, DataService, myid) {
widgetSettingsController.$inject = ['$scope', '$rootScope', '$modalInstance', 'DataService', 'myid'];