You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

split.io的localhost模式无法运行,SDK_READY事件未触发如何解决

Split.io JavaScript SDK localhost模式SDK_READY事件不触发解决方案

出现该问题的核心原因是配置结构与SDK版本不匹配、client实例化参数缺失两个问题,可按以下步骤逐一排查修复:

  • 版本适配配置结构
    v10及以上版本的Split JS SDK调整了localhost模式的feature配置路径,旧版本中放在根节点的features配置,需要移动到sync.localhostFeatures节点下,修改后的初始化配置如下:
    var factory = SplitFactory({
      core: {
        authorizationKey: "localhost",
      },
      sync: {
        localhostFeatures: {
          "my-feature": "on"
        }
      }
    });
    
  • 补充client实例化的用户标识参数
    Split客户端SDK要求实例化时传入用户唯一标识,未传该参数会导致初始化流程卡住无法触发就绪事件,修改client实例化代码:
    // 提前传入用户ID,后续调用getTreatment无需重复传递
    var client = factory.client("CUSTOMER_ID");
    
  • 改用Promise形式监听就绪状态
    部分场景下事件绑定时机晚于SDK就绪触发时机,会导致回调不执行,可改用SDK内置的ready方法监听就绪:
    client.ready().then(() => {
      console.log("SDK_READY");
      var treatment = client.getTreatment("my-feature");
      console.log(treatment);
    });
    

按以上步骤修改后,localhost模式即可正常触发就绪事件,返回对应的feature开关值。

内容的提问来源于stack exchange,提问作者Philip Beber

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.21 09:57:03