Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.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_Angular Directive - Fatal编程技术网

Angularjs 角度-单击时将对象从指令传递到父范围

Angularjs 角度-单击时将对象从指令传递到父范围,angularjs,angular-directive,Angularjs,Angular Directive,我正在使用angular指令生成一个可重用的模板,并在其中显示一些数据。指令还有一个ng点击,它应该获取一个对象并将其传递给父控制器。我有点卡住了,不知道如何将数据从指令控制器传递到父控制器的作用域。我读过,但情况有点不同 指令的js代码: angular.module("app") .directive('userData', function() { return { restrict: "E", templateUrl: "directive

我正在使用angular
指令生成一个可重用的模板,并在其中显示一些数据。
指令
还有一个
ng点击
,它应该获取一个对象并将其传递给父
控制器
。我有点卡住了,不知道如何将数据从
指令
控制器
传递到父
控制器的作用域。我读过,但情况有点不同

指令的js代码:

angular.module("app")
    .directive('userData', function() {
    return {
        restrict: "E",
        templateUrl: "directives/userData/userData.html",
        scope: {
            userObj: "="
        },
        controller: function($scope){

        },
        link: function(scope, elements, attrs, controller){

        }
    }
});
这是
指令
html:

<div class="style" ng-click="displayFullDetails(userObj)">{{userObj.first_name}}</div>

您也可以发布您的父控制器吗?@JeremyWilken刚刚添加了父控制器代码。您可以向子控制器添加另一个作用域参数onClick:“&”,并从父控制器传入一个函数。然后在子函数中使用对象调用父函数。@sledsworth我不确定我是否理解。只需将父函数也作为一个指令即可。它更加模块化,然后您可以使用您的子指令
require
选项来要求父级,并使用它的功能向父级提供数据。请参阅这些文档中的“通信指令”部分:
angular.module("app").controller("parentCtrl", ['$scope', function ($scope) {
    angular.element(document).ready(function () {
        getDataService.getJsonData().then(function (data) {
            $scope.users = data.data;    
        })

    });

}]);