热门搜索 :
考研考公
您的当前位置:首页正文

angular里route中参数的使用

来源:东饰资讯网

angular的route中包含了很多的信息,我们可以拿来使用。

route route对象

我们来看下面的概念

什么是Subject?在RxJS中,Subject是一类特殊的Observable,它可以向多个Observer多路推送数值。普通的Observable并不具备多路推送的能力(每一个Observer都有自己独立的执行环境),而Subject可以共享一个执行环境。

BehaviorSubject 是Subject的一个衍生类,具有“最新的值”的概念。它总是保存最近向数据消费者发送的值,当一个Observer订阅后,它会即刻从 BehaviorSubject 收到“最新的值”。

所以BehaviorSubject其实就是一个Observable对象。

我们来看route里的BehaviorSubject。

1.data

执行this.route.data.subscribe(i => console.log(i));

{title: "Solution Edit"}

2.fragment

就是#后面的值,我们可以用来处理锚点的问题。

执行this.route.fragment.subscribe(i => console.log(i));

gate

锚点处理

private anchor: string;

ngOnInit() {

        this.router.fragment.subscribe( i => {

                this.anchor = i;   // 找到锚点字符串

        })

}

然后利用scrollToView即可。

3.params

执行this.route.params.subscribe(i => console.log(i));

{id: "11967"}

4.queryParams

执行this.route.queryParams.subscribe(i => console.log(i));


5.url

执行this.route.url.subscribe(i => console.log(i));

{name: "qw", age: "12"}

Top