2016-11-28 140 views
2

我有一個Angular2刪除尾部斜線的問題。我已經安裝了我的dotnet核心應用程序來添加它們,但是隻要js加載進去,它們就會被刪除。Angular2保留/添加尾部斜槓

Angular2中甚至有可能嗎?

(我的客戶需要它,所以不需要添加註釋,不要使用尾部斜線)。

在此先感謝。

編輯: 應該補充,這與Angular2通用型運行,因此升級的角度版本不是那麼容易:(

回答

0

我相信這是一個problem faced由淨離散事件

與此提交此修復程序在2.3.0-beta.1版本的角度。試着改變你的角度版本,看看問題是否解決。

fix: support trailing slash in basePath

或者

你試過嗎?這似乎這樣的伎倆在我的機器

上。在app.routing.ts:

{ path: 'link/.', component: MyComponent },

超鏈接:

<li class="nav-item" [routerLinkActive]="['active']" [routerLinkActiveOptions]="{exact:true}"> 
     <a class="nav-link" [routerLink]="['/link/.']">MyComponent</a> 
    </li> 
+0

這似乎只適用於basePath。如果我去「/ articles/article-1 /」,它會將它剝離爲「articles/article-1」 - 但我需要並且希望它保留最後的斜線。 –

+0

斜槓後加一段時間 –

1

我們必須通過角一個網站,我們決定之後遷移到Angular4 Universal我們的問題之一是自動刪除的尾部斜槓,即在我們的網站搜索引擎優化的功效,經過多次嘗試後,我們發現了一種用於防止這種不可取的行爲的方式與下面的代碼相同(在app.module.ts文件中):

import { NgModule } from '@angular/core'; 
import { Injectable } from '@angular/core'; 
import { Location } from '@angular/common'; 

import {AppComponent} from './app.component'; 


@Injectable() 
export class UnstripTrailingSlashLocation extends Location { 
    public static stripTrailingSlash(url: string): string { 
    return url; 
    } 
} 


Location.stripTrailingSlash = UnstripTrailingSlashLocation.stripTrailingSlash; 

@NgModule({ 
    declarations: [ 
    AppComponent 
    ], 
    imports: [...], 
    providers: [...], 
    bootstrap: [AppComponent] 
}) 
export class AppModule { 
}