2017-08-15 23 views
1

我使用ESLint到皮棉我作出反應的應用程序,以及用於與className一個Link成分,我得到以下警告:陣營 - 添加類名路段組件,ESLint錯誤

error Prop 'className' is forbidden on Components react/forbid-component-props

我得到那是什麼一回事,我意識到,我可以把這個規則了,但我寧願做的事情「正確」的方法...

這是我的組件 -

<Link 
    className="edit_link" 
    to={`/user/${this.state.user.id}/edit`}> 
    Edit 
</Link> 

這一切都應該如此......但是對於這種情況,是否有最佳做法?對於我創建的組件,我當然可以將className放置在組件的最外面的DOM節點上,但組件的鏈接Link應該如何處理?

回答

1

根據this link。您可以關閉此規則或將className放置在DOM節點上。

+0

謝謝 - 我明白了,但我正在尋找'第三種方式 - 我可以離開規則,但是在沒有控制DOM節點的組件上設置'className'? – skwidbreth

+0

這只是一個警告。如前所述,它只阻止傳遞道具,這些道具爲組件添加了很多複雜性(className,style)。你不需要完全繞過所有的警告:)。 (至少從我的意見) –

+0

很酷,謝謝。是的,我和你在一起,我不一定認爲所有的警告都必須遵守...但是我對這個問題不熟悉,並且想要確定沒有我忽略的一些「最佳實踐」。 – skwidbreth