0

我试图通过指令识别元素所在的控制器的名称。我最初认为这很简单,但经过大量搜索和挑选几个对象的日志输出后,我不再接近了。

作为概念证明 id 的示例,执行以下操作:

app.directive('identifyInput', function() { return {
require: 'ngModel',
link: function(scope, element, attrs, ngModelCtrl) {
  function fromUser(text) {
    var controllerName = element.CONTROLLERNAME;
    attrs.$observe('ngModel', function(modelName) {
      if (modelName) {
        alert(controllerName.' -> '.modelName);
      }
    });
  }
  ngModelCtrl.$parsers.push(fromUser);
} }; });

感谢您的关注!

4

1 回答 1

0

假设您已将输入包含在指定了 name 属性的表单中,则表单控制器将在此名称下发布到当前范围。它可以在指令中作为 element.controller('form') 访问。

于 2013-11-07T05:41:40.013 回答