想象一下,我想用像Instagram这样的React创建一个Web应用程序,用户可以在其中添加图片。然后,添加的每张图片都与一个网址相关联,如下所示:
https://www.instagram.com/p/BTg4ZopggE9
我们怎么能这样做?
我知道有这个模块' react-router'但据我所知,它只适用于程序员硬编码的一组预定义路由(不能动态创建URL)。
答案 0 :(得分:3)
虽然反应路由器中的路由是预先定义的,但是参数可以是动态的。例如,您可以使用类似/images/:imageId
的路径,ImageId只不过是用于保存图像ID的变量名称。现在,当用户在那里导航时,他们会看到这样的网址,/images/12ert56
或类似的东西。然后,它们被路由到的组件将通过调用this.props.params.imageId
从param中读取图像id,然后组件将向他们显示相应的图像。