繁体   English   中英

React Router 如何从路径字符串中推断出强类型 arguments?

[英]How does React Router infer strongly typed arguments from path string?

(这是一个理解工作原理的问题,而不是“我如何……”的问题)

在使用 React Router 时,我意识到 Vscode IntelliSense 可以在我在这样的路由中键入强类型参数时向我建议强类型参数:

<Route path='/users/:userId?' render={props => <UserManager selectedId={props.}/>} />

当我输入props.match.params. ,每当我在path字符串中作为:text作为强类型参数从字符串内部到 params 作为强类型属性(如果在我的情况下有问号,则为可选参数):

在此处输入图像描述

Vscode/TypeScript/React Router 如何从用户输入的裸字符串生成强类型参数?

它知道props.match.params必须匹配路由的占位符。

你有/users/:userId所以它知道userId是它可以在那里拥有的唯一名称。

它是一个路由参数,所以它必须是一个字符串,因为 URL(和 URL 的位)必须是字符串。

你把它标记为? 所以它知道它可以是undefined的而不是字符串。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM