3

我有一个应用程序,它创建了几个带有随机调查 ID 的调查。由于 id 在后端生成,它们在控制器中设置。我阅读了相关文档,但是我并不真正了解如何设置路由参数以始终到达页面 /survey/:surveryID。

到目前为止,这是我的代码:

应用配置:

...
 .when('/survey/:surveyId', {
        templateUrl: 'views/survey.html',
        controller: 'SurveyCtrl',
        controllerAs: 'survey'
      })

控制器:

function SurveyCtrl($scope, RequestService, _, $location, $routeParams) {

  $scope.go = function () {
    $location.path('/#/survey/' + Math.random());
  };
}

使用 /survey/:surveyId 的链接查看:

  <div>
    <md-button ng-click="go()">Enter Survey</md-button>
  </div>

我知道这不是正确的方法,甚至不起作用。有人可以告诉我如何动态创建这些参数并将它们设置在控制器中,以便我可以使用按钮访问链接,然后在单击时到达调查/:surveyId 页面?

4

2 回答 2

3

为了完成你的工作,

$location.path('/survey/' + Math.random());

您也可以使用搜索方法来传递参数,

$location.path('/myURL/').search({param: 'value'});

$location 方法是可链接的。

这个产品:

/myURL/?param=value
于 2017-04-19T17:05:53.290 回答
0

您也可以使用以下updateParams方法:

$route.updateParams({'surveryID': Math.random()});

并使用访问数据$routeParams.surveryID

于 2021-11-19T11:30:30.163 回答