首页 > 解决方案 > 如何使用 Javascript 检测用户在我的网站中的首次访问?

问题描述

我在页面上有一个带有导游的 React 应用程序,但是当用户在注册后访问该功能时,我使用 localStorage 将 firstAccess 键设置为 true,但我认为可以有更有效的方法来获取有关第一次访问的信息用户,使用用户代理的东西可能吗?问题是,知道用户是否是第一次访问的常用方法是什么?我可以用一个简单的 Javascript 代码得到这个吗?

当 localStorare 上的 key firstAccess 等于“true”时,游览开始,但问题是我在完成游览时将此键设置为 false,但其他页面需要显示自己的游览,但密钥设置为 false这次。

我正在使用它开始游览:

 localStorage.setItem("newUser", true);

但是这个key是在用户注册后设置的,在其他页面使用:

  function userRegistered() {
    const auxStorage = localStorage.getItem("newUser");

    if (auxStorage === "true") {
      setTourRun(true);
    }
  }

游览结束后,我将 key 设置为 false:


  function cancelTour() {
    setTourRun(false);
    localStorage.removeItem("newUser");
  }

因为这个我不能在其他旅游页面中使用这个相同的键。

预期的结果是我可以识别每个页面中的第一次使用并开始每个页面的单独浏览。

标签: javascript

解决方案


我不知道您所说的效率是什么意思...本地存储效率很高。但是,我认为你应该反过来考虑这个问题。

首次访问时本地存储将是的,因此请在完成检查后设置您的本地存储项。

if (!localStorage.getItem('previouslyVisited')) {
  runTour();
  localStorage.setItem('previouslyVisited', 'true');
}

推荐阅读