javascript - 有没有办法从 AngularJS 指令中获取外部 Controller 名称?

标签 javascript angularjs

我是 AngularJS 的新手...这是问题:

例如:

HTML

<div ng-controller='DemoController'>
  <div my-directive></div>
</div>

JavaScript

app.directive('myDirective', function(){
  return {
    restrict: 'A',
    link: function(scope, element, attrs){
      //I want to get the outer controller name (in this case 'DemoController') here when using this directive
      // var controller_name = ?
    }
  };
});

如何获取外部 Controller 名称?

感谢您的帮助

最佳答案

您可以使用指令的属性将您想要的任何内容传递给指令。请参阅guide about directives 。在你的情况下,可以这样做:

HTML

<div ng-controller='DemoController'>
  <div my-directive="DemoController"></div>
</div>

JS

app.directive('myDirective', function(){
  return {
    restrict: 'A',
    link: function(scope, element, attrs){
      var controller_name = attrs.myDirective;
    }
  };
});

关于javascript - 有没有办法从 AngularJS 指令中获取外部 Controller 名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21794979/

相关文章:

javascript - 如何从数组对象数组中获取特定属性?

javascript - 设置选择值

javascript - 为什么在解析父状态 promise 之前执行子状态解析函数

javascript - 如何以 Angular 方式迭代表单字段?

javascript - 如何使用使用自己的 XMLHttpRequest 而不是 $http 的库来测试服务

javascript - 使用 jQuery 显示/隐藏基于复选框的 div

javascript - 使用 Gmail Apps 脚本发送预设回复

javascript - bootstrap-datepicker (范围) - AngularJS 指令

angularjs - 在 AngularJS 中重用表单片段

javascript - this.form.submit() 在上传目录时不起作用