zoukankan      html  css  js  c++  java
  • Angular中通过$location获取地址栏的参数详解

    Angular中通过$location获取url中的参数

      最近,项目开发正在进行时,心有点燥,许多东西没来得及去研究,今天正想问题呢,同事问到如何获取url中的参数,我一时半会还真没想起来,刚刚特意研究了一下,常用的方法就以下几种:

    1.获取当前完整的url路径

      var absurl = $location.absUrl();     //http://88:8100/#/homePage?id=10&a=100

    2. 获取当前url路径(当前url#后面的内容,包括参数和哈希值)

      var url = $location.url();   // /homePage?id=10&a=100

    3. 获取当前url的子路径(也就是当前url#后面的内容,不包括参数)

      var pathUrl = $location.path()   ///homePage

    4.获取当前url的协议(比如http,https)

      var protocol = $location.protocol();   //http

    5.获取主机名

      var localhost = $location.host();   //88

    6.获取当前url的端口

    var port = $location.port();   //8100

    7.获取当前url的哈希值

      var hash = $location.hash()   //http://088

    8.获取当前url的参数的序列化json对象

      var search = $location.search();    //{id: "10", a: "100"}

    9. 获取url参数

      $location.search().name;

      $location.search()['name'];

    10.注意问题

    如果是这样的地址:http://lele.sina.com?name=haha 

     需要在项目中注入$locationProvider服务

     1 var searchApp = angular.module('searchApp', []);
     2 
     3 searchApp.config(['$locationProvider', function($locationProvider) {
     4 
     5 $locationProvider.html5Mode(true);
     6 
     7 }]);
     8 
     9 searchApp.controller('MainCtrl', ['$scope', '$location', function($scope, $location) {
    10 
    11 if ($location.search().keyword) {
    12 
    13 $scope.keyword = $location.search().keyword;
    14 
    15 }
    16 
    17 }]); 

    11.js中获取地址栏参数的方法(附加)

      url = https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=1&rsv_idx=2&tn=baiduhome_pg&wd=%E5%A8%83%E5%93%88%E5%93%88

      console.log(window.location.href );   // "https://www.baidu.com/s?ie=utf-8&f=3&rsv_bp=1&rsv_idx=2&tn=baiduhome_pg&wd=%E5%A8%83%E5%93%88%E5%93%88"

      console.log(window.location.host);   // "www.baidu.com"

      console.log(window.location.pathname);  // "/s"

      console.log(window.location.protocol);  //  "https:"

      console.log(window.location.search);  //  "?ie=utf-8&f=3&rsv_bp=1&rsv_idx=2&tn=baiduhome_pg&wd=%E5%A8%83%E5%93%88%E5%93%88"

  • 相关阅读:
    openstack-ntp时间同步服务
    如何将icon图标库引入自己的项目中
    微信小程序实现滑动tab切换和点击tab切换并显示相应的数据(附源代码)
    微信小程序分享至朋友圈的方法
    微信小程序--分享功能
    mpvue-新建页面、页面跳转、自适应单位
    微信小程序mpvue-动态改变navigationBarTitleText值
    mpvue中使用flyjs全局拦截
    H5 布局 -- 让容器充满屏幕高度或自适应剩余高度
    使用mpvue开发小程序如何定义全局变量
  • 原文地址:https://www.cnblogs.com/le220/p/9404421.html
Copyright © 2011-2022 走看看