AngularJS:在嵌套的Controller中调用JSON数组值

时间:2016-01-08 17:22:20

标签: javascript angularjs json

如何在其他控制器中调用Json数组值。基本上我使用嵌套控制器。嵌套控制器将返回firstname和lastname的第一个字符。

例如,如果我的名字是Anand Jee,那么它将返回AJ,Rohan Kumar然后它将返回RK。

我的AngularJS代码。

//create module
var myApp = angular.module("myApp", []);

//create controller

myApp.controller("empCtrl", function ($scope) {
    var Employees = [
        { FirstName: "Anand", LastName: "Jee", Roles: "Web Developer", Technology: ".NET" },
        { FirstName: "Pritus", LastName: "Dubey", Roles: "Window App Developer", Technology: "XAMARIN" },
        { FirstName: "Vineet", LastName: "Rai", Roles: "Web Developer", Technology: ".NET" },
        { FirstName: "Nilesh", LastName: "Pathak", Roles: "UI/UX Developer", Technology: "Photoshop" },
        { FirstName: "Vikesh", LastName: "Juyal", Roles: "Web Developer", Technology: "PHP" }
    ];
    $scope.Employees = Employees;
});

myApp.controller("EmpShortName", function ($scope) {
    $scope.getEmpShortName = function () {

        //$scope.empShortName  = $scope.Employees.FirstName + " " + $scope.Employees.LastName;//here is problem
        $scope.empShortName = "NP";//For temp declaration
        return $scope.empShortName;
    };
});

PLUNKER DEMO

1 个答案:

答案 0 :(得分:1)

Employee对象传递到getEmpShortName函数。然后只返回解析后的值。此外,不需要EmpShortName控制器,只需将范围功能放在empCtrl控制器中:

HTML:

<div class="empTextImage">{{getEmpShortName(emp)}}</div>

JS:

$scope.getEmpShortName = function (emp) {
    return emp.FirstName.substr(0,1) + emp.LastName.substr(0,1);
};

Updated Plunker