คำถามติดแท็ก angular2-routing

Angular Routing เป็นคุณสมบัติในตัวที่ช่วยให้คุณสร้างอินเทอร์เฟซผู้ใช้ Single Page Application (SPA) ซึ่งผู้ใช้สามารถนำทางไปยังมุมมองต่างๆได้โดยไม่ต้องโหลดหน้าเว็บทั้งหมดจากเซิร์ฟเวอร์ทุกครั้ง

8
เปลี่ยนพารามิเตอร์เส้นทางโดยไม่ต้องโหลดซ้ำใน Angular 2
ฉันกำลังสร้างเว็บไซต์อสังหาริมทรัพย์โดยใช้ Angular 2, Google Maps ฯลฯ และเมื่อผู้ใช้เปลี่ยนศูนย์กลางของแผนที่ฉันจะทำการค้นหา API ที่ระบุตำแหน่งปัจจุบันของแผนที่รวมทั้งรัศมี สิ่งนี้คือฉันต้องการสะท้อนค่าเหล่านั้นใน url โดยไม่ต้องโหลดซ้ำทั้งหน้า เป็นไปได้หรือไม่ ฉันพบวิธีแก้ปัญหาบางอย่างโดยใช้ AngularJS 1.x แต่ไม่มีอะไรเกี่ยวกับ Angular 2

6
การส่งผ่านข้อมูลไปยังส่วนประกอบลูกของ“ เราเตอร์เต้าเสียบ”
ฉันมีองค์ประกอบหลักที่ไปที่เซิร์ฟเวอร์และดึงวัตถุ: // parent component @Component({ selector : 'node-display', template : ` <router-outlet [node]="node"></router-outlet> ` }) export class NodeDisplayComponent implements OnInit { node: Node; ngOnInit(): void { this.nodeService.getNode(path) .subscribe( node => { this.node = node; }, err => { console.log(err); } ); } และในหนึ่งในจอแสดงผลของเด็ก ๆ : export class ChildDisplay implements OnInit{ …

2
“ ข้อผิดพลาด: ไม่มีผู้ให้บริการสำหรับเราเตอร์” ขณะเขียนกรณีทดสอบหน่วย Karma-Jasmine
เราได้ทำการตั้งค่าโครงการ angular2 หนึ่งโครงการและภายในนั้นสร้างหนึ่งโมดูล (my-module) และภายในโมดูลนั้นได้สร้างส่วนประกอบหนึ่ง (my-new-component) โดยใช้คำสั่ง cmd ต่อไปนี้: ng new angular2test cd angular2test ng g module my-module ng generate component my-new-component หลังจากสร้างการตั้งค่าและส่วนประกอบทั้งหมดเราเรียกใช้ng testคำสั่งจาก cmd ภายในโฟลเดอร์ angular2test ไฟล์ด้านล่างนี้คือไฟล์ my-new-component.component.ts ของเรา : import { Component, OnInit } from '@angular/core'; import { Router, Routes, RouterModule } from '@angular/router'; import { DummyService } …

6
เตือนผู้ใช้เกี่ยวกับการเปลี่ยนแปลงที่ไม่ได้บันทึกก่อนออกจากหน้า
ฉันต้องการเตือนผู้ใช้เกี่ยวกับการเปลี่ยนแปลงที่ไม่ได้บันทึกก่อนที่จะออกจากหน้าใดหน้าหนึ่งของแอป angular 2 ของฉัน ปกติฉันจะใช้window.onbeforeunloadแต่มันใช้ไม่ได้กับแอพพลิเคชั่นหน้าเดียว ฉันพบว่าในเชิงมุม 1 คุณสามารถเชื่อมโยง$locationChangeStartเหตุการณ์เพื่อโยนconfirmกล่องให้กับผู้ใช้ แต่ฉันไม่เห็นอะไรเลยที่แสดงให้เห็นว่าจะทำให้สิ่งนี้ทำงานได้อย่างไรกับเชิงมุม 2 หรือหากเหตุการณ์นั้นยังคงอยู่ . ฉันยังเห็นปลั๊กอินสำหรับ ag1 ที่มีฟังก์ชันสำหรับonbeforeunloadแต่อีกครั้งฉันไม่เห็นวิธีใดที่จะใช้มันสำหรับ ag2 ฉันหวังว่าจะมีคนอื่นพบวิธีแก้ปัญหานี้ วิธีใดวิธีหนึ่งจะใช้ได้ดีสำหรับวัตถุประสงค์ของฉัน

3
ส่งผ่านพารามิเตอร์ไปยังตัวป้องกันเส้นทาง
ฉันกำลังทำงานกับแอพที่มีบทบาทมากมายที่ฉันต้องใช้ยามเพื่อบล็อกการนำทางไปยังส่วนต่างๆของแอพตามบทบาทเหล่านั้น ฉันรู้ว่าฉันสามารถสร้างคลาสการ์ดป้องกันสำหรับแต่ละบทบาทได้ แต่จะมีคลาสเดียวที่ฉันสามารถส่งผ่านพารามิเตอร์ไปได้ กล่าวอีกนัยหนึ่งฉันต้องการที่จะทำสิ่งที่คล้ายกันนี้: { path: 'super-user-stuff', component: SuperUserStuffComponent, canActivate: [RoleGuard.forRole('superUser')] } แต่เนื่องจากทั้งหมดที่คุณผ่านคือชื่อประเภทของยามของคุณจึงไม่สามารถคิดวิธีที่จะทำเช่นนั้นได้ ฉันควรจะบิตกระสุนและเขียนคลาสยามแต่ละตัวต่อบทบาทและทำลายภาพลวงตาของความสง่างามด้วยการมีประเภทพารามิเตอร์เดี่ยวแทนหรือไม่

15
จะกำหนด URL ของหน้าก่อนหน้าใน Angular ได้อย่างไร?
สมมติว่าผมอยู่บนหน้าเว็บที่มี /user/:idURL :id/postsตอนนี้จากหน้านี้ฉันนำทางไปยังหน้าถัดไป ตอนนี้มีวิธีใดบ้างที่ฉันสามารถตรวจสอบว่า URL ก่อนหน้าคือ/user/:idอะไรเช่น. ด้านล่างนี้คือเส้นทางของฉัน export const routes: Routes = [ { path: 'user/:id', component: UserProfileComponent }, { path: ':id/posts', component: UserPostsComponet } ];

11
'เราเตอร์ - เต้ารับ' ไม่ใช่องค์ประกอบที่รู้จัก
ฉันมีโครงการ mvc 5 ที่มีส่วนหน้าเชิงมุม ผมอยากจะเพิ่มเส้นทางตามที่อธิบายไว้ในนี้กวดวิชาhttps://angular.io/guide/router ดังนั้นในของ_Layout.cshtmlฉันฉันจึงเพิ่มไฟล์ <base href="/"> และสร้างเส้นทางของฉันใน app.module ของฉัน แต่เมื่อฉันเรียกใช้สิ่งนี้ฉันได้รับข้อผิดพลาดต่อไปนี้: Error: Template parse errors: 'router-outlet' is not a known element: 1. If 'router-outlet' is an Angular component, then verify that it is part of this module. 2. If 'router-outlet' is a Web Component then add 'CUSTOM_ELEMENTS_SCHEMA' to the …

7
Angular 2 - Routing - CanActivate ทำงานกับ Observable
ฉันมีAuthGuard (ใช้สำหรับการกำหนดเส้นทาง) ที่ดำเนินการCanActivate canActivate() { return this.loginService.isLoggedIn(); } ปัญหาของฉันคือว่า CanActivate ผลขึ้นอยู่กับ http-ได้รับผล - The LoginServiceส่งกลับสังเกต isLoggedIn():Observable<boolean> { return this.http.get(ApiResources.LOGON).map(response => response.ok); } ฉันจะนำสิ่งเหล่านี้มารวมกัน - ทำให้ CanActivate ขึ้นอยู่กับสถานะแบ็กเอนด์ได้อย่างไร # # # # # # แก้ไข: โปรดทราบว่าคำถามนี้มาจากปี 2559 - มีการใช้เชิงมุม / เราเตอร์ในช่วงแรก ๆ # # # # # #

8
จะทดสอบส่วนประกอบที่ขึ้นอยู่กับพารามิเตอร์จาก ActivatedRoute ได้อย่างไร
ฉันกำลังทดสอบหน่วยส่วนประกอบที่ใช้ในการแก้ไขวัตถุ อ็อบเจ็กต์มีเอกลักษณ์idที่ใช้เพื่อดึงอ็อบเจ็กต์เฉพาะจากอาร์เรย์ของอ็อบเจ็กต์ที่โฮสต์ในเซอร์วิส เฉพาะidถูกจัดหาผ่านพารามิเตอร์ที่ส่งผ่านทางเส้นทางโดยเฉพาะผ่านActivatedRouteคลาส ตัวสร้างมีดังนี้: constructor(private _router:Router, private _curRoute:ActivatedRoute, private _session:Session) { } ngOnInit() { this._curRoute.params.subscribe(params => { this.userId = params['id']; this.userObj = this._session.allUsers.filter(user => user.id.toString() === this.userId.toString())[0]; ฉันต้องการเรียกใช้การทดสอบหน่วยพื้นฐานในส่วนประกอบนี้ อย่างไรก็ตามฉันไม่แน่ใจว่าฉันจะฉีดidพารามิเตอร์ได้อย่างไรและส่วนประกอบต้องการพารามิเตอร์นี้ โดยวิธีการ: ฉันมีล้อเลียนสำหรับSessionบริการอยู่แล้วดังนั้นจึงไม่ต้องกังวลที่นั่น

1
จะรีโหลดเพจด้วยการแบ่งหน้าใน Angular 2 ได้อย่างไร? [ปิด]
ปิด . คำถามนี้ต้องการรายละเอียดหรือความคมชัด ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ เพิ่มรายละเอียดและชี้แจงปัญหาโดยแก้ไขโพสต์นี้ ปิดให้บริการใน3 ปีที่ผ่านมา ปรับปรุงคำถามนี้ ฉันจะโหลดหน้าปัจจุบันซ้ำบน Angular 2 ได้อย่างไร ถ้าฉันอยู่ในหน้าที่ 2 (การแบ่งหน้า) และรีเฟรชหน้ามันจะแสดงหน้า 1 (หน้า URL) แต่ฉันต้องการให้ฉันรีเฟรชหน้า 2 และจะปรากฏในหน้า 2
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.