不要在链接

时间:2016-09-15 08:43:17

标签: angularjs angular-ui-router

我想访问控制器上的$stateParams值,但我不想在链接上显示值。这可能吗?

HTML

<a ui-sref="baba.watch({name: card.name, aktar: {chapter:card.chapter, link:card.link}})">

的Javascript

.state('baba.series', {
url: "/series/:name/:aktar",
templateUrl: "states/baba.series.html",
controller: "nbgCtrl"
});

.controller('nbgCtrl', function ($scope, $stateParams) {
            $scope.milo = $stateParams.aktar.link;
            console.log($scope.milo);

我未定义。 链接应该看起来像/series/Naruto/345。显示章节值不显示链接值。

编辑:$ stateParams的输出:

isim:"Naruto",
aktar:"[object Object]"

2 个答案:

答案 0 :(得分:2)

您可以设置状态数据,当状态加载时,它不会显示在URL上。

.state('baba.series', {
  url: "/series",
  templateUrl: "states/baba.series.html",
  controller: "nbgCtrl",
  data: {
    link: 'some value',
    isim: 'Value', 
    aktar: 'Value'
  }
});

您现在可以从控制器中检索值

.controller('nbgCtrl', function ($scope, $state) {
  $scope.milo = $state.data.link;
  $scope.isim = $state.data.isim;
  $scope.aktar = $state.data.aktar;
  console.log($scope.milo);
}

答案 1 :(得分:0)

定义您的状态网址,如下所示

url: "/series"

您无法获取网址,同时您还可以获取$ stateParams中的值/数据