2017-04-07 8 views
0

私は、angular2を使ってクイズ作成/共有ウェブサイトを作成していますが、クイズの共有方法はわかりません。私は各クイズの識別子をURLとして使うことを考えていました。クイズはフォームを使って作成され、JSONとしてdocmentdbに保存されます。それらを識別するための一意のIDを持っています。どのように私はこれを行うことができるかについての任意のアイデア?ユニークIDのangle2を持つパス/リンク

これらのURLは、新しいクイズを送信してからアクセスできるように、動的に作成する必要があります。あなたのURLに位置し、その値によってされているものをパスパラメータ読むことができ、あなたのコンポーネント内

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

:よう

答えて

0

あなたはクイズであなたのページに同じベースURLを使用していますが、パスパラメータでクイズを区別することができます

コンポーネント

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 
     }); 
    } 
} 
:ActivateRouteオブジェクトにアクセス
関連する問題