如何使用Angular,Node,Express和PostgreSQL将范围从主范围传递到详细信息?

时间:2018-11-20 14:14:15

标签: angularjs node.js postgresql express master-detail

我有一个使用Angular 1,Node,Express和PostgreSQL作为后端的小型应用程序。 PostgreSQL中有一个company表,该应用程序通过ng-repeat在主屏幕上显示记录。我正在使用$ routeProvider进行导航,以向下钻取到详细信息屏幕,但无法在范围中获取选定的公司详细信息。有人可以告诉我我需要更改吗?

(部分)主屏幕:

<tr ng-repeat="company in companies | orderBy : 'name' | filter: listFilter">
  <td>{{ company.id }}</td>
  <td><a href="#/companies/{{company.id}}" ng-click="getCompanyById(company.id)">{{ company.name }}</a></td>

使用ng-click()调用该函数以查找所选公司的详细信息。该函数如下所示:

angular.module('hpms.company', [])
.controller('CompanyController', function ($scope, $route, Company) {
  ...
  $scope.getCompanyById = function(id) {
    Company.getCompanyById(id)
      .then(function(company) {
        $scope.company = company;
      })
      .catch(function(error) {
        console.error(error);
      });
  };
  ...
})

我希望$ scope.company = company语句将公司详细信息添加到范围中,但是在详细信息页面的范围中,它不可用(尽管该函数确实返回了正确的公司)。

0 个答案:

没有答案