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)
|
||||
}
|
||||
route.set = function(path, data, options) {
|
||||
if (lastUpdate != null) options = {replace: true}
|
||||
if (lastUpdate != null) {
|
||||
options = options || {}
|
||||
options.replace = true
|
||||
}
|
||||
lastUpdate = null
|
||||
routeService.setPath(path, data, options)
|
||||
}
|
||||
|
|
|
|||
|
|
@ -665,7 +665,7 @@ o.spec("route", function() {
|
|||
route(root, "/a", {
|
||||
"/a" : {
|
||||
onmatch: function() {
|
||||
route.set("/b")
|
||||
route.set("/b", {}, {state: {a: 5}})
|
||||
},
|
||||
render: render
|
||||
},
|
||||
|
|
@ -684,6 +684,7 @@ o.spec("route", function() {
|
|||
o(view.callCount).equals(1)
|
||||
o(root.childNodes.length).equals(1)
|
||||
o(root.firstChild.nodeName).equals("DIV")
|
||||
o($window.history.state).deepEquals({a: 5})
|
||||
|
||||
done()
|
||||
})
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue