Recently came across a requirement where url parameter value should be saved in localstorage
Let's say the url is test.com/abc=123 and the localstorage name is 'abc_local'.
Path: app/code/Vendor/Module/view/frontend/web/js/tracking.js
The following will check all the parameters availabe in the URL and select only the required via getUrlParams() method.
require([ 'jquery' ], function($){ var page_url = window.location.href; var abc_val; var getUrlParams = function getUrlParameter(page_url) { var url = window.location.search.substring(1), params = page_url.split('&'), param_name, i; for (i = 0; i < page_url.length; i++) { param_name = page_url[i].split('='); if (param_name[0] === page_url) { return param_name[1] === undefined ? true : decodeURIComponent(param_name[1]); } } }; abc_val = getUrlParams('abc'); localStorage.setItem('abc_local', abc_val); }); The newest way to save this seems to be the following
require([ 'jquery' ], function($){ var searchParams = new URLSearchParams(window.location.search) var abc_val = searchParams.get('abc'); localStorage.setItem('abc_local', abc_val); });
Top comments (0)