我正在使用Statsig Reaction SDK判断GATE,如果GATE返回TRUE,则显示一些用户界面.当我使用通过大门的用户id进行初始化时,一切都如我所预期的那样工作,并且呈现了UI.

我遇到的问题是,当我调用Statsig.updateUser时,我无法更改UI.这是一个错误,还是我做错了什么?

我有一个测试门设置来传递特定的用户id("通过的用户").

以下是重现此问题所能获得的最基本设置.

function Test() {
  return (
    <>
      <button
        onClick={() => Statsig.updateUser({ userID: "user-that-passes" })}
      >
        Update
      </button>
      <p>{Statsig.checkGate("test_gate") ? "Pass" : "Fail"}</p>
    </>
  );
}

function App() {
  return (
    <StatsigProvider
      sdkKey="intentionally blank"
      user={{ userID: "user-that-fails" }}
      waitForInitialization={true}
    >
      <Test />
    </StatsigProvider>
  );
}

如果我单击调用Statsig.updateUser的按钮,则什么也不会发生,门仍然失败.

有人能在这里帮我吗?

谢谢

推荐答案

很抱歉听说你遇到了麻烦.

当User对象更改时,我们会自动调用updatUser.其意图是您使用useState(..)保留一个用户对象,并且在您想要触发更新时只更新该状态.

在这里的文档中概述了这一点 https://docs.statsig.com/client/reactSDK#updating-the-statsiguser

我们还在研究一个钩子来更新用户,以帮助澄清围绕这一点的困惑,应该会在下一个版本中推出.当它发布后我会跟进的.

如果这不能解决您的问题,请告诉我,我可以帮助您进一步了解.

Reactjs相关问答推荐

使用Overpass API Endpoint计算 map 上的面积

Redux Store未触发React组件中的重新呈现

使用`Link`包装`tr`标记会在Next.js中产生水合错误14

我应该如何管理设置组件初始状态的复杂逻辑?

Redux工具包-useSelector如何通过Reducer引用InitialState?

这两个子元素在Reaction Native中使用的有什么不同?

状态更改是否卸载功能组件

如何解决使用react-hook-form和yup动态创建的输入不集中的问题

提前输入错误:选项类型上不存在属性名称

Spring Boot + React + MySQL应用的架构层面有哪些?

React中的功能性组件克隆优化

我应该如何将字符串作为props 传递给 React 组件?

useEffect 渲染没有依赖数组的组件

使用 MuiCssBaseline 在所有 MUI v5 标签上设置边距 0

我正在通过 API(有效)从 MongoDB 传递数据.可视化但我不断收到此 TypeError: Cannot convert undefined or null to object

位于组件material-ui中的TextField中的 map 功能不起作用

next js 13 在获取中使用标头时动态渲染而不是静态渲染?

我应该使用 useEffect 来为 React Native Reanimated 的 prop 值变化设置动画吗?

如何禁用来自 React Native API 的某些特定项目的可touch 不透明度

在表格中显示具有自定义声明的用户状态