fix url decoding in route args
This commit is contained in:
parent
85685f55b0
commit
a80621e3a6
2 changed files with 19 additions and 1 deletions
|
|
@ -312,7 +312,7 @@ Mithril = m = new function app(window) {
|
|||
return !void path.replace(matcher, function() {
|
||||
var keys = route.match(/:[^\/]+/g)
|
||||
var values = [].slice.call(arguments, 1, -2)
|
||||
for (var i = 0; i < keys.length; i++) routeParams[keys[i].replace(/:|\./g, "")] = values[i]
|
||||
for (var i = 0; i < keys.length; i++) routeParams[keys[i].replace(/:|\./g, "")] = decodeURIComponent(values[i])
|
||||
m.module(root, router[route])
|
||||
})
|
||||
}
|
||||
|
|
|
|||
|
|
@ -523,6 +523,24 @@ function testMithril(mock) {
|
|||
mock.performance.$elapse(50) //teardown
|
||||
return mock.location.search == "?/test9/foo/bar/SEP/baz" && root.childNodes[0].nodeValue === "foo/bar_baz"
|
||||
})
|
||||
test(function() {
|
||||
mock.performance.$elapse(50) //setup
|
||||
mock.location.search = "?"
|
||||
|
||||
var root = mock.document.createElement("div")
|
||||
m.route.mode = "search"
|
||||
m.route(root, "/test10/foo%20bar", {
|
||||
"/test10/:test": {
|
||||
controller: function() {},
|
||||
view: function() {
|
||||
return m.route.param("test")
|
||||
}
|
||||
}
|
||||
})
|
||||
mock.performance.$elapse(50) //teardown
|
||||
return root.childNodes[0].nodeValue === "foo bar"
|
||||
})
|
||||
//end m.route
|
||||
|
||||
//m.prop
|
||||
test(function() {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue