关于javascript:reactrouter处理特殊字符

49次阅读

共计 328 个字符,预计需要花费 1 分钟才能阅读完成。

遇到的问题
http://localhost:8088/user/current-conversation/GROUP@TGS#15S477ZGI
【GROUP@TGS#15S477ZGI】是群组会话 ID,然而这个会话 ID 外面有 #,#是 url 的特殊字符示意锚点,导致在详情页外面取到的会话 ID 没有# 前面的局部

解决办法:

this.props.history.push(`/user/current-conversation/$
{encodeURIComponent(encodeURIComponent(conversation.conversationID))}
`);

两次 encodeURIComponent
在详情页外面两次 decodeURIComponent

正文完
 0