我想实现广泛传播模式mywebsite / en / welcome。在这种情况下,我必须修改我的所有包括实际的param:lang到他们的prop'到'。没有这个实现,我无法知道当前的语言。所以,我使用handleLocationChange将curent:lang传播到我的所有组件。但我收到的地点道具只包括当前路径和查询。我怎么能接受治疗:lang param呢? 附:我想避免所有这一切,但AFAIK react-router不支持相关链接
答案 0 :(得分:1)
当呈现<Route>
的组件时,会传递一个params
道具,您可以使用它来访问从URL解析的lang
。如果您需要从子组件访问它,则必须将其作为支持传递给该组件。
<Route path=':lang/my-page' component={MyPage} />
const MyPage = (props) => {
const { lang } = props.params
return (
<div>This page's language is: {lang} </div>
)
}