我有一个有趣的问题,我有这个路由规则
"/upload_image/:lat-:lng"
, wherelat
和lng
是地理坐标。
当我尝试使用这样的路径访问时,/upload_image/42.04648822804604--71.65695190429688
其中第一个破折号是上面规则中定义的lat
和之间的分隔符。lng
但是当我尝试$routeParams
使用
lat
=42.04648822804604-
和lng
=访问时实际发生了什么71.65695190429688
,它们是错误坐标,angularjs 根据上面的规则将第二个破折号作为两个参数之间的分隔符,
任何解决方案让它总是拿起第一个破折号?(我知道我可以使用除破折号以外的其他分隔符,但有兴趣知道是否有解决方案 + 破折号更好)。
更新: 这是关于 freenode 上#angularjs 频道的有趣讨论的结果(从文档看来这不应该工作。“:”应该占用所有内容,直到下一个斜杠(或我猜的字面量)所以它是一个贪婪的匹配。http://docs.angularjs.org/api/ngRoute.$routeProvider )