Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 从子指令中的父指令访问值_Angularjs - Fatal编程技术网

Angularjs 从子指令中的父指令访问值

Angularjs 从子指令中的父指令访问值,angularjs,Angularjs,我有以下标记: <div parent="john"> <div child>Child 1 </div> <div child>Child 2</div> </div> 如何创建父指令(其中设置了值,例如John)并在子指令上访问父指令值?使用隔离作用域为您的子指令定义双向绑定。参考文献: 隔离范围在子项中定义为: return { scope: { attName: '=' },

我有以下标记:

<div parent="john">
   <div child>Child 1 </div>
   <div child>Child 2</div>
</div>

如何创建父指令(其中设置了值,例如John)并在子指令上访问父指令值?

使用
隔离作用域
为您的
子指令定义双向绑定。参考文献:

隔离范围
在子项
中定义为:

return {
   scope: {
       attName: '='
   },
   // ... others
};
将子项用作:

parentVar
是父级
范围内的一个值。当在
父项
中更改此值时,该值将通过角度传播到
子项

======================


根据请求,这里有一个示例:

使用
隔离作用域
为您的
子指令定义双向绑定。参考文献:

隔离范围
在子项
中定义为:

return {
   scope: {
       attName: '='
   },
   // ... others
};
将子项用作:

parentVar
是父级
范围内的一个值。当在
父项
中更改此值时,该值将通过角度传播到
子项

======================


根据请求,这里有一个示例:

您可以要求指令,然后访问父控制器:

angular.module("app").directive("child", child);

function child($parse) {
  var child = {
    require: '^parent',
    link: link,
    replace: false,
    restrict: "A"
  };
  return child;
  function link(scope, element, attributes, parentCtrl) {
    //Here you have access to the parent controller
  }
}

您可以要求指令,然后访问父控制器:

angular.module("app").directive("child", child);

function child($parse) {
  var child = {
    require: '^parent',
    link: link,
    replace: false,
    restrict: "A"
  };
  return child;
  function link(scope, element, attributes, parentCtrl) {
    //Here you have access to the parent controller
  }
}

对不起,我不知道你在说什么。你能给我举个更完整的例子吗?谢谢。我不希望将att名称设置为子级,因为该值将始终是父级中的值。我可以有很多孩子。。。因此,更改父级将迫使我更改所有代码。我真的希望child只在parent存在并且值总是取自parent时才工作。实际上,我从注释中没有理解您的意思。这个答案是针对你在问题中提出的问题。您可能想探索更多的指令选项。我相信对于您的场景有一些解决方案。我试图按照您的示例进行操作,但我仍然在child上得到未定义的值。请你看看我的例子。我遗漏了什么?你为什么不把你的和我的比较一下?对不起,我不知道你在说什么。你能给我举个更完整的例子吗?谢谢。我不希望将att名称设置为子级,因为该值将始终是父级中的值。我可以有很多孩子。。。因此,更改父级将迫使我更改所有代码。我真的希望child只在parent存在并且值总是取自parent时才工作。实际上,我从注释中没有理解您的意思。这个答案是针对你在问题中提出的问题。您可能想探索更多的指令选项。我相信对于您的场景有一些解决方案。我试图按照您的示例进行操作,但我仍然在child上得到未定义的值。请你看看我的例子。我遗漏了什么?你为什么不把你的和我的比较一下呢?检查这个检查这个我试过了,但没能成功。你能看一下我的在线示例吗?我试过了,但没能成功。你能看一下我的在线示例吗?