aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorGonzalo Ruiz de Villa2012-12-11 11:41:53 +0100
committerIgor Minar2012-12-14 01:15:15 +0100
commit30a9da5dc159dd1e19b677914356925c7ebdf632 (patch)
tree794f2f94e7816572bba8c0d147f1621a2c581ff3 /src
parent25e1ad9a9443de6b7ebb40409af72021cc4e7b20 (diff)
downloadangular.js-30a9da5dc159dd1e19b677914356925c7ebdf632.tar.bz2
fix($route): correctly extract $routeParams from urls
Routes like '/bar/foovalue/barvalue' matching '/bar/:foo/:bar' now are well mapped in $routeParams to: {bar:'barvalue', foo:'foovalue'} Closes: #1501 Signed-off-by: Gonzalo Ruiz de Villa <gonzaloruizdevilla@gmail.com>
Diffstat (limited to 'src')
-rw-r--r--src/ng/route.js8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/ng/route.js b/src/ng/route.js
index e2a9c633..361b8ac3 100644
--- a/src/ng/route.js
+++ b/src/ng/route.js
@@ -321,12 +321,12 @@ function $RouteProvider(){
var regex = '^' + when.replace(/([\.\\\(\)\^\$])/g, "\\$1") + '$',
params = [],
dst = {};
- forEach(when.split(/\W/), function(param) {
- if (param) {
- var paramRegExp = new RegExp(":" + param + "([\\W])");
+ forEach(when.split(/[^\w:]/), function(param) {
+ if (param && param.charAt(0) === ':') {
+ var paramRegExp = new RegExp(param + "([\\W])");
if (regex.match(paramRegExp)) {
regex = regex.replace(paramRegExp, "([^\\/]*)$1");
- params.push(param);
+ params.push(param.substr(1));
}
}
});