浏览代码

Fix query string in navigate

Caleb Porzio 2 年之前
父节点
当前提交
69c640f923
共有 2 个文件被更改,包括 11 次插入9 次删除
  1. 3 1
      packages/navigate/src/fetch.js
  2. 8 8
      packages/navigate/src/prefetch.js

+ 3 - 1
packages/navigate/src/fetch.js

@@ -1,6 +1,8 @@
 
 export function fetchHtml(destination, callback) {
-    fetch(destination.pathname).then(i => i.text()).then(html => {
+    let uri = destination.pathname + destination.search
+
+    fetch(uri).then(i => i.text()).then(html => {
         callback(html)
     })
 }

+ 8 - 8
packages/navigate/src/prefetch.js

@@ -22,21 +22,21 @@ export function storeThePrefetchedHtmlForWhenALinkIsClicked(html, destination) {
 }
 
 export function getPretchedHtmlOr(destination, receive, ifNoPrefetchExists) {
-    let path = destination.pathname
+    let uri = destination.pathname + destination.search
 
-    if (! prefetches[path]) return ifNoPrefetchExists()
+    if (! prefetches[uri]) return ifNoPrefetchExists()
 
-    if (prefetches[path].finished) {
-        let html = prefetches[path].html
+    if (prefetches[uri].finished) {
+        let html = prefetches[uri].html
 
-        delete prefetches[path]
+        delete prefetches[uri]
 
         return receive(html)
     } else {
-        prefetches[path].whenFinished = () => {
-            let html = prefetches[path].html
+        prefetches[uri].whenFinished = () => {
+            let html = prefetches[uri].html
 
-            delete prefetches[path]
+            delete prefetches[uri]
 
             receive(html)
         }