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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.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,我在两个单独的模块(和两个单独的.js文件)中有两个控制器,html如下所示: <div ng-controller="ParentCtrl as parent"> . . . <div ng-controller="ChildCtrl as child"> <table> . . . </table>

我在两个单独的模块(和两个单独的.js文件)中有两个控制器,html如下所示:

<div ng-controller="ParentCtrl as parent">
    .
    .
    .
    <div ng-controller="ChildCtrl as child">
        <table>
            .
            .
            .
        </table>    
    </div>

    <button ng-click="parent.cancel()">Cancel</button>

</div>

.
.
.
.
.
.
取消
我的目标是在单击cancel按钮时清空ChildCtrl范围内的表。我在ChildCtrl中有一个deleteAll()方法,用于清空表,但是,我希望从ParentCtrl.cancel()内部调用该方法。根据我所做的一些研究,虽然我没有可行的解决方案,但我有以下选择:

(1) 使用服务(尽管就我所看到的示例而言,只有数据由服务共享,而不是方法共享)

(2) 使用$rootscope

(3) 使用$broadcast(再次使用$rootscope)


这方面的最佳方法是什么?如何做到

您是否参考了下面的链接,该链接有可用的演示,并且使用$broadcast

希望对你有帮助