具有唯一ID的angular2的路径/链接

时间:2017-04-07 12:31:45

标签: forms angular path

我使用angular2创建了一个测验制作/分享网站,但我不确定如何分享测验。我正在考虑将每个测验标识符用作URL。测验使用表单进行,并作为JSON保存在docmentdb中。他们有唯一的ID来识别它们。关于我如何做到这一点的任何想法?

必须动态创建这些URL,因为可以提交新的测验并随后访问。

1 个答案:

答案 0 :(得分:0)

您可以使用相同的基本网址进行测验,但可以通过路径参数区分测验,例如:

quizsite.com/#/quiz/12    (12 being quiz id)

在组件内部,您可以通过访问ActivateRoute对象来读取网址中的路径参数及其值:

<强>组件

import { Component } from '@angular/core';
import { ActivatedRoute } from '@angular/router';

@Component({
    templateUrl: 'quizComponent.html',
})
export class QuizComponent {
     constructor(private activatedRoute: ActivatedRoute){}


    ngOnInit() {
         // Reason for this being a observable is that you can watch 
            parameter changing (manually in url, or programmatically) 
            and without any page refresh, read new parameter and change you quiz

         this.activatedRoute.params.subscribe(params => {
            console.log(params.quizId);
            // With this parameter you can make call to your REST API and return 
                  data for that quiz 
         });
    }
}