2017-02-13 52 views
-1

對於反應世界來說是新的,所以要好一點:-)我想將道具傳遞給像<a href={this.props.text} </a>這樣的鏈接,但我希望將其轉換爲「有效」鏈接,所以如果我會傳遞動態內容,如「新來反應」,它會轉換爲/new-to-react使用React傳遞道具來渲染有效的href

我該如何解決這個問題?我查找了React組件,但什麼也沒找到。

有意義嗎?任何意見非常感謝,謝謝。

+0

什麼你所描述的被稱爲「鼻涕蟲」,並有大量的生成它們的模塊:https://www.npmjs.com/search?q=slug –

+0

正是我所期待的,謝謝你。 – user2945872

回答

2

您可以使用此實用程序功能將您的文本更改爲slug。

function slugify(text){ 
    return text.toString().toLowerCase() 
    .replace(/\s+/g, '-')   // Replace spaces with - 
    .replace(/[^\w\-]+/g, '')  // Remove all non-word chars 
    .replace(/\-\-+/g, '-')   // Replace multiple - with single - 
    .replace(/^-+/, '')    // Trim - from start of text 
    .replace(/-+$/, '');   // Trim - from end of text 
} 

所以,如果你有slugify包裝你this.props.text那麼你會得到適當芯子。

例如:

如果this.props.text'Hello World'{slugify(this.props.text)}'hello-world'

感謝這個要點:https://gist.github.com/mathewbyrne/1280286

+0

拯救生命。謝啦 – user2945872

相關問題