Heim  >  Fragen und Antworten  >  Hauptteil

angular.js - angular 2 怎么获取当前地址栏的URL

后台自动跳转的URL,请问ng2怎么获取地址栏的URL,以及其中的参数?
网上搜的答案是ng1的,方法是let aid=$location.search().aid;这样的。但是在ng2里找不到$location这个。

世界只因有你世界只因有你2713 Tage vor822

Antworte allen(7)Ich werde antworten

  • 我想大声告诉你

    我想大声告诉你2017-05-15 17:11:22

    window.location.href
    好像不需要ng2的方法吧

    Antwort
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-15 17:11:22

    angular 2 不可能没有$location吧

    //1.获取当前完整的url路径  
    var absurl = $location.absUrl();  
    //http://172.16.0.88:8100/#/homePage?id=10&a=100  
      
    //2. 获取当前url路径(当前url#后面的内容,包括参数和哈希值):  
     var url = $location.url();  
     // 结果:/homePage?id=10&a=100  

    Angular 通过注入 $location 获取与修改当前页面URL

    Antwort
    0
  • 黄舟

    黄舟2017-05-15 17:11:22

    window.location.href //当前地址栏的URL
    this.sub = this.route.params.subscribe(params => {

            let 变量 = +params['参数名'];
            });
            //当前地址参数

    Antwort
    0
  • PHP中文网

    PHP中文网2017-05-15 17:11:22

    官方例子:Location,

        import {Component} from '@angular/core';
        import {Location} from '@angular/common';
        @Component({selector: 'app-component'})
        class AppCmp {
          constructor(location: Location) {
            location.go('/foo');
          }
        }

    Antwort
    0
  • 给我你的怀抱

    给我你的怀抱2017-05-15 17:11:22

    我也遇到了这个问题,确实找不到,同求

    Antwort
    0
  • 某草草

    某草草2017-05-15 17:11:22

    import { Component, OnInit, Inject } from '@angular/core';
    import {ActivatedRoute, Params} from '@angular/router';
    
    @Component({
        selector: 'demo',
        template: `<p></p>`
    })
    export class DemoComponent implements OnInit {
        constructor(@Inject(ActivatedRoute) private router: ActivatedRoute) { }
    
        ngOnInit() {
            this.router.params.subscribe((params: Params) => {
                // params 
            });
        }
    }

    https://angular.io/docs/ts/la...

    Antwort
    0
  • 漂亮男人

    漂亮男人2017-05-15 17:11:22

    说一下获取参数,
    import {ActivatedRoute} from '@angular/router';
    官方非要你用rxjs,但是这样强行用也是没问题的:
    this._activatedRoute.params'value'

    Antwort
    0
  • StornierenAntwort