我有两个页面,on负责列出一些记录,另一个是在我们点击记录时显示更多信息。
这是我列出记录的方式:
<ul id="myList">
<li ng-repeat="offre in offres | orderBy:'-dateCreation' | filter:{etat:'true'} | limitTo:limit">
<h4><a href="" ng-click="goTo(offre.titre,offre.codeOffre)">{{offre.titre}}</a></h4>
</li>
</ul>
当我点击某个记录时,它将调用方法goTo(),如下所示:
$scope.goTo=function(titreOffre,codeOffre){
titreOffre=titreOffre.replace(/ /g,"-");
$state.go('app.job',{titreOffre:titreOffre,codeOffre: codeOffre});
};
这是app.job
州:
.state('app.job', {
url : '/job/:titreOffre',
params : {
'codeOffre' : null
},
templateUrl : 'views/tmpl/job-details.html'
})
在job-details.html
页面中,我使用codeOffre作为参数传递给app.job
,以获取有关此记录的数据,如下所示:
$http.get('http://localhost:8080/offre/offres/' + codeOffre)
.then(function (response) {
return response;
}, function (error) {
return 'There was an error getting data';
});
所以这一切都运行正常,唯一的问题是当我显示job-details.html
页面然后我刷新它codeOffre
我传递了一个参数不再保留我传递给它的值它设置为null。
我该如何解决这个问题?
答案 0 :(得分:1)
有两种选择:
<强> 1。将其传递到网址:
url: '/job/:titreOffre/:codeOffer'
<强> 2。使用sessionStorage:
在服务中定义getter和setter方法,以读取,写入和更新codeOffer
的值。并在控制器中适当地使用这些方法。