Skip to content

Commit 73bd0f3

Browse files
authored
Merge pull request #33 from oslabs-beta/josh/react-router
snapshot list is reset when page is refreshed
2 parents 60b5ceb + 52ba77b commit 73bd0f3

File tree

2 files changed

+26
-8
lines changed

2 files changed

+26
-8
lines changed

src/extension/background.js

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@ console.log('background.js file is running');
22

33
let bg;
44

5+
// when tab refreshes, empty snapshotArr
6+
57
// need a function to clear snapshotArr when either tab is closed or page is refreshed
68
let snapshotArr = [];
79

@@ -34,11 +36,19 @@ chrome.runtime.onConnect.addListener((port) => {
3436
chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
3537
console.log('npm -> background', request);
3638
// if port is not null, send a message to devtools
37-
if (bg) {
38-
// get active tab id
39-
// get snapshot arr from tab object
40-
snapshotArr.push(request);
41-
bg.postMessage(snapshotArr);
42-
// else, push snapshot into an array
43-
} else snapshotArr.push(request);
39+
40+
if (request.action === 'tabReload') {
41+
console.log('tabReload');
42+
snapshotArr = [];
43+
}
44+
45+
console.log(request);
46+
if (request.action === 'recordSnap') {
47+
snapshotArr.push(request.payload);
48+
if (bg) {
49+
// get active tab id
50+
// get snapshot arr from tab object
51+
bg.postMessage(snapshotArr);
52+
}
53+
}
4454
});

src/extension/contentScript.js

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,10 @@ console.log('contentScript running');
22

33
// listening for messages from npm package
44
window.addEventListener('message', (msg) => {
5+
// post initial Message to npm package
56
const { action, payload } = msg.data;
67
console.log('npm -> contentScript', msg.data);
7-
if (action === 'recordSnap') chrome.runtime.sendMessage(payload);
8+
if (action === 'recordSnap') chrome.runtime.sendMessage(msg.data);
89
});
910

1011
// listening for messages from background.js
@@ -23,3 +24,10 @@ chrome.runtime.onMessage.addListener((request, sender, sendResponse) => {
2324
break;
2425
}
2526
});
27+
28+
// since contentScript is run everytime a page is refreshed
29+
// tell the background script that the tab has reloaded
30+
chrome.runtime.sendMessage({ action: 'tabReload' });
31+
32+
window.postMessage({ action: 'contentScriptStarted' });
33+
console.log('contentScriptStarted msg sent');

0 commit comments

Comments
 (0)