问题
我有一个如下所示的抽象路线:#/app/lists/:label
。
当用户创建“早餐”“标签”
时,这非常棒。
但是,当 label
值为 '#All'
时,则 $stateParams.label === ""
。
问题
如何让 Angular/-ui-router 确认 #/app/lists/#All
的文字 URL 中的 octothorpe(哈希符号)? ($stateParams.label
)
允许用户添加 octothorpe,例如 #All
或 #Public
,是我希望为用户保留的必要约定。当这个角色出现时,我该怎么做才能获得这个“标签”?
最佳答案
您可以对该参数进行编码和解码以放置“#”。
路由到值为 '#All' 的页面 #/app/lists/:label
时
encodeURIComponent('#All');
这将返回“%23All”
读取数据时,您需要在代码中对其进行解码:
decodeURIComponent("%23All");
关于JavaScript | Angular : UI Router $stateParams With Octothorpe Is Falsey,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43381977/