Javascript 多父子作用域事件触发器问题
我有一个针对父范围的指令,还有一个针对子范围的指令。在模板中,我有几个父子作用域。像这样Javascript 多父子作用域事件触发器问题,javascript,angularjs,angularjs-rootscope,Javascript,Angularjs,Angularjs Rootscope,我有一个针对父范围的指令,还有一个针对子范围的指令。在模板中,我有几个父子作用域。像这样 ParentScope1 - ChildScope1 ParentScope2 - ChildScope2 如果我在父级中更改了一个值,我会将它广播给子级。我正在使用$rootScope.$broadcast从家长处进行广播。我正在使用$rootScope.$on接受child中的此更改 我的问题是: 现在,如果我更改ParentScope1中的值,它将广播到ChildScope1。然后我将更改Par
ParentScope1
- ChildScope1
ParentScope2
- ChildScope2
如果我在父级中更改了一个值,我会将它广播给子级。我正在使用$rootScope.$broadcast
从家长处进行广播。我正在使用$rootScope.$on
接受child中的此更改
我的问题是:
现在,如果我更改ParentScope1中的值,它将广播到ChildScope1。然后我将更改ParentScope2中的一个值,它将广播到ChildScope2,但它也将广播到ChildScope1
我想要:更改ParentScope1中的值,它将广播到ChildScope1。更改ParentScope2中的值,它将广播到ChildScope2。我在线搜索了一段时间,但没有找到解决方案。也许我没有使用正确的关键字来搜索它。请告知。谢谢。在您对指令集的定义中
scope : true
然后使用
$scope.$broadcast
$scope.$on
这可能很好用
发布代码,以便我们更好地了解指令集定义中的问题
scope : true
然后使用
$scope.$broadcast
$scope.$on
这可能很好用
发布您的代码,以便我们更好地了解问题您正在寻找父指令和子指令之间的通信,您可以使用以下方法,但使用此方法,两个指令将紧密耦合- 需要控制器-获取父节点指令控制器的同一节点的句柄。 要求:“^parnetDireName”用于查找父节点上的控制器。如果没有^,它将仅为同一节点查找。“?”当控制器可能不可用时使用。“?^”、“?^^”、“^^”。链接函数的第四个参数用于获取控制器。它可以使用控制器属性/方法。您还可以访问多个控制器,因为Require将具有数组-Require:['^dir1','^dir2'].链接功能将具有cntrl数组,并且可以通过相同序列中的数组元素进行访问 嵌套指令的前链接和后链接功能-
- 默认链接功能是post链接功能
- 使用关键字post显式定义它
- 如果父级和子级都具有后期链接功能,则首先执行子级后期链接功能
- 如果父级和子级都具有预链接功能,则首先执行父级链接功能
- 控制器在链接功能之前执行
item/modified item by指令将是父范围的一部分。它是 默认值或范围:false -具有继承作用域的指令。通过包含控制器,指令添加的任何新项都将不可见。指令作用域可以从父作用域读取所有数据。使用scope:true属性将其激活。子作用域可以查看父数据,并可以重写或创建新变量。
-独立作用域。两个作用域无法读取彼此的数据。读取父数据需要对象映射。指令作用域映射将具有对象名称,并且将从html传递相同的对象。有三种方法接收参数- -使用完整的对象数据->'=' -Simple valuelike标志作为字符串使用-“@”。@sampleVar',其中sampleVar是html中变量的名称。 范围{ cntrollerStrVarName:“@htmlStrVarName” }
-函数参数-“&”用于传递参数。可以使用({paramName:'value'})覆盖方法参数如果要查找父指令和子指令之间的通信,可以使用下面的方法,但使用此方法将两个指令紧密耦合- 需要控制器-获取父节点指令控制器的同一节点的句柄。 Require:“^parnetDireName”用于查找父节点上的控制器。如果没有^,它将仅查找同一节点。“当控制器可能不可用时使用”。“?^”、“?^^”、“^^^”。使用link函数的第四个参数得到控制器。它可以使用控制器属性/方法。您还可以访问多个控制器,因为Require将具有array-Require:['^dir1','^dir2']链接功能将具有cntrl数组,可以通过相同顺序的数组元素访问 嵌套指令的前链接和后链接功能-
- 默认链接功能是post链接功能
- 使用关键字post显式定义它
- 如果父级和子级都具有后期链接功能,则首先执行子级后期链接功能
- 如果父级和子级都具有预链接功能,则首先执行父级链接功能
- 控制器在链接功能之前执行
指令项/修改项将是父范围的一部分。它是 默认值或范围:false -具有继承作用域的指令。通过包含控制器,指令添加的任何新项都将不可见。指令作用域可以从父作用域读取所有数据。使用scope:true属性将其激活。子级可以看到父级数据,并可以重写或创建新变量。
-隔离作用域。两个作用域都无法读取彼此的数据。读取父数据需要对象映射。指令作用域映射