想要使用Angular JS在不同的页面中显示特定的行数据

时间:2017-05-21 07:47:20

标签: javascript angularjs ngroute

<a href='#/viewCampaign' ng-click="viewCampaign(campaignData)">View</a>

在我的controller.js文件中,我定义了ng-click功能 我在campaignData

中点击了行记录
$scope.viewCampaign = function(campaignData){
    $scope.id = campaignData.campaign_id;
    console.log('View campaign:: '+$scope.id);
  }
});

我正在使用ngRoute切换特定广告系列数据的视图 我做了如下。

.when('/viewCampaign', {
  templateUrl: './campaign-detail.html'
})

现在,我该如何在./campaign-detail.html中显示记录 在这方面请帮助我。

感谢。

1 个答案:

答案 0 :(得分:1)

对此的简单解决方案可以是:

当您使用viewCampaign调用ng-click函数时,请将该数据存储在某个服务中,例如campaignDataService

$scope.viewCampaign = function(campaignData){
    $scope.id = campaignData.campaign_id;
    console.log('View campaign:: '+$scope.id);
    // calling campaignDataService here to store data inside that
  }
});

将路线更改为:

.when('/viewCampaign', {
  template: '<campaign-detail/>',
})

将templateUrl更改为模板并使用directive代替模板将对您有所帮助。

campaign-detail directive关联controller并注入包含所需数据的campaignDataService。 您可以在与campaign-detail directive链接的html中轻松使用该数据。

希望这能帮助您解决问题!