Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/24.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 Can';无法理解哪个作用域将与DOM节点关联_Angularjs_Angularjs Scope - Fatal编程技术网

Angularjs Can';无法理解哪个作用域将与DOM节点关联

Angularjs Can';无法理解哪个作用域将与DOM节点关联,angularjs,angularjs-scope,Angularjs,Angularjs Scope,例如,将任何控制器连接到DOM节点时 {{testProperty}} 控制器作用域将与此DOM节点关联。 想象另一个例子。我们创建了指令myDirective,它有自己的独立作用域。现在我们有了 <div ng-controller="myController" myDirective>{{testProperty}}</div> {{testProperty} 在这种情况下,哪个作用域将与DOM节点关联?控制器或指令的范围?最后一个例子,我们还有一个指令mysec

例如,将任何控制器连接到DOM节点时

{{testProperty}}

控制器作用域将与此DOM节点关联。 想象另一个例子。我们创建了指令myDirective,它有自己的独立作用域。现在我们有了

<div ng-controller="myController" myDirective>{{testProperty}}</div>
{{testProperty}
在这种情况下,哪个作用域将与DOM节点关联?控制器或指令的范围?最后一个例子,我们还有一个指令mysecondirective,它有自己的独立 范围

{{testProperty}
在这种情况下,哪个作用域将与DOM节点关联?myDirective或mySecondDirective的范围?你能解释一下原因吗

{{testProperty}}

对于在单个DOM元素上定义的多个指令,您可以显式定义一个优先级:-请参见:


{{testProperty}}
在这种情况下,哪个作用域将与DOM节点关联?范围 控制器还是指令

对于在单个DOM元素上定义的
控制器的$scope和指令的scope

“transclude选项更改了作用域的嵌套方式。它使得转置指令的内容具有指令外部的任何作用域,而不是指令内部的任何作用域。在这样做的过程中,它让内容可以访问外部范围。”从angularjs文档中可以找到:

{{testProperty}}

对于在单个DOM元素上定义的多个指令,您可以显式定义一个优先级:-请参见:


{{testProperty}}
在这种情况下,哪个作用域将与DOM节点关联 控制器还是指令


对于在单个DOM元素上定义的
控制器的$scope和指令的scope

“transclude选项更改了作用域的嵌套方式。它使得转置指令的内容具有指令外部的任何作用域,而不是指令内部的任何作用域。在此过程中,它允许内容访问外部作用域。”从这里找到的angularjs文档:

谢谢,但你们都错了。正如我发现的,不可能在一个DOM节点上创建两个或多个作用域。Angular抛出此错误:

Error: [$compile:multidir] Multiple directives [pTest2, pTest] asking for new/isolated scope on: <p-test p-test2="">
错误:[$compile:multidir]多个指令[pTest2,pTest]要求在以下位置上创建新的/隔离的作用域:

谢谢,但你们都错了。我发现在一个DOM节点上不可能创建两个或多个作用域。Angular抛出以下错误:

Error: [$compile:multidir] Multiple directives [pTest2, pTest] asking for new/isolated scope on: <p-test p-test2="">
错误:[$compile:multidir]多个指令[pTest2,pTest]要求在以下位置上创建新的/隔离的作用域:

所以我发布的答案直接来自angularjs文档。也许你应该发布你的整个代码,因为你的实现可能会与其他东西发生冲突,或者你发现了一个bug,谁知道呢-而不是说“你们都错了”?哈哈。显然,如果你使用的是
ng repeat
(未在您的原始帖子中显示)这可能会引起一些关注,正如这里所讨论的:您关于“您可以显式定义优先级”的说法是正确的。您可以在一个DOM节点上定义两个指令及其子范围(范围:true),但将只创建一个作用域(两者通用)。如果其中一个具有子作用域(作用域:true),而另一个具有独立作用域(作用域:{}),则不能在一个DOM节点上定义两个指令,angularjs将抛出错误。这是我的问题,我没有问指令优先级,我问如果两个指令有自己的子作用域或独立作用域,会发生什么。因此,我发布的答案直接来自angularjs文档。也许你应该发布你的整个代码,因为你的实现可能会导致与其他指令冲突或者你发现了一个bug,谁知道呢?不要说“你们都错了”?哈哈。显然,如果你使用的是
ng repeat
(你的原始帖子中没有显示),这可能会引起一些问题,正如这里所讨论的:你关于“你可以明确定义优先级”的观点是正确的“。您可以在一个DOM节点上定义两个指令及其子作用域(作用域:true),但将只创建一个作用域,这两个作用域都通用。如果其中一个具有子作用域(作用域:true),而另一个具有独立作用域(作用域:{}),则无法在一个DOM节点上定义两个指令。”,angular将抛出错误。这是我的问题,我没有问指令优先级,我问如果两个指令有自己的子作用域或隔离作用域会发生什么。