Angularルーター-リダイレクトのURLが間違っています

tzm

Angularルーティングに問題があります。パラメータを使用してあるページから別のページにリダイレクトしようとしています。その結果、ブラウザは次のリンクにリダイレクトしようとします: ' http:// localhost:4200 / resumes /%5Bobject%20Object%5D / edit ' http:// localhost:4200 / resumes / 21 / edit '。

app-routing.module.ts

{ path: 'resumes/:id/edit', component: EditResumeComponent } 

component.ts

import { Component, OnInit } from '@angular/core';
import { Resume } from 'src/app/models/Resume';
import { ResumeService } from 'src/app/services/resume.service';
import { Router } from '@angular/router';
import { UserService } from 'src/app/services/user.service';
import { AddUser } from 'src/app/models/AddUser';

@Component({
  selector: 'app-supply-contact-information',
  templateUrl: './supply-contact-information.component.html',
  styleUrls: ['./supply-contact-information.component.css']
})
export class SupplyContactInformationComponent implements OnInit {
  id: string;
  resume: Resume;

  constructor(
    private resumeService: ResumeService,
    private router: Router,
    private userService: UserService) { }

  ngOnInit() {
    this.resume = this.resumeService.getResume();
  }

  onSubmit() {
    this.resumeService.updateResume(this.resume);
    const addUserRequest = new AddUser(this.resume.firstName, this.resume.lastName, this.resume.email, this.resume.phone);

    this.userService.addUser(addUserRequest)
      .subscribe(value => this.id = value.toString(),
        () => {
          // TODO: On error should be implemented here!
        },
        () => {
          this.router.navigate([`/resumes/${this.id}/edit`]);
        });
  }
}

user.service.ts

import { Injectable } from '@angular/core';
import { HttpClient, HttpHeaders } from '@angular/common/http';
import { Observable, of } from 'rxjs';
import { AddUser } from '../models/AddUser';
import { environment } from '../../environments/environment';
import { catchError, tap } from 'rxjs/operators';

const httpOptions = {
  headers: new HttpHeaders(
    {
      'Access-Control-Allow-Origin': '*',
      'Content-Type': 'application/json'
    }),
};

@Injectable({
  providedIn: 'root'
})
export class UserService {
  private apiUrl = environment.apiUrl;

  constructor(private http: HttpClient) { }

  addUser(addUserQuery: AddUser): Observable<number> {
    return this.http.post<number>(`${this.apiUrl}/user`, addUserQuery, httpOptions)
      .pipe(
        tap(() => this.log(`User with email: ${addUserQuery.email} created!`, false)),
        catchError(this.handleError<any>('addUser'))
      );
  }

  private handleError<T>(operation = 'operation', result?: T) {
    return (error: any): Observable<T> => {
      console.error(`${operation}: ${error}`);
      return of(result as T);
    };
  }

  // TODO: It should be implemented better later!
  private log(message: string, showNotification: boolean) {
    if (showNotification) {
      console.log(message);
    }
  }
}

私はこのようにリダイレクトしようとしましたが、同じ結果が得られました:

this.router.navigate(['resumes', id, 'edit']);

idは通常の文字列プロパティであり、オブジェクトではありません。AddUser私が使用してメソッドは、数値を返し.toString()て、文字列にする方法を。

nircraft

あなたは次のように応答しているので:{"resumeId":31}

(valueからresumeIdを使用し、ナビゲーションに使用する)を使用する必要があります。

this.userService.addUser(addUserRequest)
      .subscribe(value => this.id = value.resumeId.toString(),
        () => {
          // TODO: On error should be implemented here!
        },
        () => {
          this.router.navigate([`/resumes/${this.id}/edit`]);
        });

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

ルートが間違ったページにリダイレクトしています

分類Dev

301はルールリダイレクトを間違ったURLにリダイレクトします

分類Dev

Rails - URL が間違ったユーザーにリダイレクトする

分類Dev

ルートの名前変更とリダイレクトにより、間違ったURLヘルパーが生成されます

分類Dev

URL http:// localhost:8000 / admin /が間違ったページにリダイレクトされます

分類Dev

YiiでURLが間違っているか、コントローラー/アクションが間違っている場合、無効なページにリダイレクトするにはどうすればよいですか?

分類Dev

フルカレンダー:イベントの終了時刻が間違っています

分類Dev

RTSPストリームをファイルに保存するときのフレームレートとメタデータが間違っています

分類Dev

ルートが間違ったコントローラーにリダイレクトしている

分類Dev

レイトレーサーのUVが間違っています

分類Dev

データディレクトリ "/ usr / local / var / postgres"の所有権が間違っています

分類Dev

IDの形式が間違っています!GoogleAnalyticsリーダー

分類Dev

CMake:ビルドターゲットディレクトリが間違っています

分類Dev

GoogleAppsスクリプトのログのタイムゾーンが間違っています

分類Dev

IntellijWebリソースディレクトリのWebファセットが間違っています

分類Dev

PHPフォームアクションが間違ったページにリダイレクトされています

分類Dev

アップデートパックのレイアウトの位置と半径が間違っています

分類Dev

スタイルシートをhtmlにリンクする-何が間違っているのですか?

分類Dev

管理者のユーザーディレクトリが間違っています

分類Dev

ソートスクリプトの構文が間違っていますか?

分類Dev

AngularUIルーターのテンプレートとコントローラーが間違っています

分類Dev

Reactルーターは間違ったページにリダイレクトします

分類Dev

Paintのハンドラーでのテキストレンダリングのサイズが間違っています

分類Dev

if elselaravelを使用してデータが送信されたときの間違ったリダイレクト

分類Dev

CSS要素のタイトルが間違っています

分類Dev

スクリプトのマージ...ファイルオブジェクトのタイプが間違っていますか(多分)?

分類Dev

MSWordヘッダーレベル4の番号が間違っています

分類Dev

SQL Serverクエリビルダーが間違っていますか?

分類Dev

GHC-modが間違ったディレクトリで設定ファイルを探しています

Related 関連記事

  1. 1

    ルートが間違ったページにリダイレクトしています

  2. 2

    301はルールリダイレクトを間違ったURLにリダイレクトします

  3. 3

    Rails - URL が間違ったユーザーにリダイレクトする

  4. 4

    ルートの名前変更とリダイレクトにより、間違ったURLヘルパーが生成されます

  5. 5

    URL http:// localhost:8000 / admin /が間違ったページにリダイレクトされます

  6. 6

    YiiでURLが間違っているか、コントローラー/アクションが間違っている場合、無効なページにリダイレクトするにはどうすればよいですか?

  7. 7

    フルカレンダー:イベントの終了時刻が間違っています

  8. 8

    RTSPストリームをファイルに保存するときのフレームレートとメタデータが間違っています

  9. 9

    ルートが間違ったコントローラーにリダイレクトしている

  10. 10

    レイトレーサーのUVが間違っています

  11. 11

    データディレクトリ "/ usr / local / var / postgres"の所有権が間違っています

  12. 12

    IDの形式が間違っています!GoogleAnalyticsリーダー

  13. 13

    CMake:ビルドターゲットディレクトリが間違っています

  14. 14

    GoogleAppsスクリプトのログのタイムゾーンが間違っています

  15. 15

    IntellijWebリソースディレクトリのWebファセットが間違っています

  16. 16

    PHPフォームアクションが間違ったページにリダイレクトされています

  17. 17

    アップデートパックのレイアウトの位置と半径が間違っています

  18. 18

    スタイルシートをhtmlにリンクする-何が間違っているのですか?

  19. 19

    管理者のユーザーディレクトリが間違っています

  20. 20

    ソートスクリプトの構文が間違っていますか?

  21. 21

    AngularUIルーターのテンプレートとコントローラーが間違っています

  22. 22

    Reactルーターは間違ったページにリダイレクトします

  23. 23

    Paintのハンドラーでのテキストレンダリングのサイズが間違っています

  24. 24

    if elselaravelを使用してデータが送信されたときの間違ったリダイレクト

  25. 25

    CSS要素のタイトルが間違っています

  26. 26

    スクリプトのマージ...ファイルオブジェクトのタイプが間違っていますか(多分)?

  27. 27

    MSWordヘッダーレベル4の番号が間違っています

  28. 28

    SQL Serverクエリビルダーが間違っていますか?

  29. 29

    GHC-modが間違ったディレクトリで設定ファイルを探しています

ホットタグ

アーカイブ