javascript - 如何为angular js设置动态url

标签 javascript php angularjs codeigniter

我的地址栏网址是

hostname/admin/Usergroup_controller/view_members/1

我在内部使用angular js调用

hostname/admin/Usergroup_controller/get_view_members/1

最后是 id,现在是 1 但可以更改。

我想在下面的代码中传递那个 url

$http.get(site_url + 'hostname/admin/Usergroup_controller/get_view_members/1').success(function (data) {}

我怎么能???

希望你明白

最佳答案

根据你的问题,我了解到你想在浏览器 url 中包含“id”,例如 hostname/admin/Usergroup_controller/view_members/1 从而想使用它执行 GET 请求'id' 如 $http.get(site_url + 'hostname/admin/Usergroup_controller/get_view_members/1')

我假设您正在使用 $routeProvider( Angular 路由)。现在这意味着您需要调整 .when(path, route) 方法以在浏览器的 url 中传递动态“id”。所以,.when(path, route) 会像 .when('/Usergroup_controller/view_members/:id', templateUrl: 'viewMembers.html');假设 viewMembers.html 是您要路由到的页面。

之后,更改 .when(path, route) 您需要从浏览器的 url 中提取 :id 的值。这将通过在路由页面的 Controller 中使用 $routeParams 来完成,在本例中将是 viewMembers.html。在 viewMembers.html 的 Controller 中,您需要通过编写以下内容来提取 :id 的值:

$scope.idEnteredInBrowserUrl=$routeParams.id;

现在,您需要在您将执行 $http.get() 请求的服务中传递值 $scope.idEnteredInBrowserUrl。这可以通过在服务中创建一个函数来完成,比如

var setIdEnteredInBrowserUrl = function (id) {
  $http.get(site_url +  'hostname/admin/Usergroup_controller/get_view_members/'+id).success(function    (data) {}}

请注意 $http.get() 在 setter 函数中被提及,因为您希望 $http.get() 仅在此方法之后被调用已被调用,您必须将 :id 值附加到 GET 请求 URL。

viewMembers.html 的 Controller 调用此方法并将提取的 :id$scope.idEnteredInBrowserUrl 传递给服务.

关于javascript - 如何为angular js设置动态url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36131745/

相关文章:

javascript - Angular ng-click 不会触发我指令中的函数

javascript - 如何从链接函数访问与指令关联的 Controller 实例?

javascript - 根据输入文本按元素排序,AngularJS

javascript - 如何设置 CodeKit 2 在保存 JS 文件时自动更新 HTML 页面?

php - SaaS 平台 - 每个用户或一个主账户的不同数据库用户

javascript - 使用 Laravel 从 AJAX 提交中返回验证和成功的闪现消息

php - mysqli_fetch_assoc()需要参数/调用成员函数bind_param()错误。如何获取并修复实际的mysql错误?

javascript - 主干 - 为什么 collection.reset 不触发模型事件?

javascript - 解释 javascript Date() 函数

javascript - 如何通过调用 div id(包含)Php 页面?