Don't overwrite the options object when redirecting from onmatch with m.route.set, fix #1857
This commit is contained in:
parent
9b947f41f0
commit
a867754d6a
2 changed files with 6 additions and 2 deletions
|
|
@ -39,7 +39,10 @@ module.exports = function($window, redrawService) {
|
||||||
redrawService.subscribe(root, run)
|
redrawService.subscribe(root, run)
|
||||||
}
|
}
|
||||||
route.set = function(path, data, options) {
|
route.set = function(path, data, options) {
|
||||||
if (lastUpdate != null) options = {replace: true}
|
if (lastUpdate != null) {
|
||||||
|
options = options || {}
|
||||||
|
options.replace = true
|
||||||
|
}
|
||||||
lastUpdate = null
|
lastUpdate = null
|
||||||
routeService.setPath(path, data, options)
|
routeService.setPath(path, data, options)
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -665,7 +665,7 @@ o.spec("route", function() {
|
||||||
route(root, "/a", {
|
route(root, "/a", {
|
||||||
"/a" : {
|
"/a" : {
|
||||||
onmatch: function() {
|
onmatch: function() {
|
||||||
route.set("/b")
|
route.set("/b", {}, {state: {a: 5}})
|
||||||
},
|
},
|
||||||
render: render
|
render: render
|
||||||
},
|
},
|
||||||
|
|
@ -684,6 +684,7 @@ o.spec("route", function() {
|
||||||
o(view.callCount).equals(1)
|
o(view.callCount).equals(1)
|
||||||
o(root.childNodes.length).equals(1)
|
o(root.childNodes.length).equals(1)
|
||||||
o(root.firstChild.nodeName).equals("DIV")
|
o(root.firstChild.nodeName).equals("DIV")
|
||||||
|
o($window.history.state).deepEquals({a: 5})
|
||||||
|
|
||||||
done()
|
done()
|
||||||
})
|
})
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue