我和我的团队正在使用 Optimizely 进行 A/B 测试。通常,我们会创建复杂的变体,在其中更改页面的布局和行为。
最近,我们开始与一个客户合作,他的网站是基于 ReactJS 构建的。虽然我们只需要更改页面上的一些元素和布局的第一个 A/B 测试相当容易,但我们在第二个测试中面临挑战,我们需要添加一个应该影响其他元素行为的元素。
即,我们有一个产品页面,该页面具有带有 3 个下拉菜单的过滤器。我们需要再添加 1 个下拉列表,以便在更改 4 个中的任何一个的状态时,产品列表将根据所有这些的当前状态进行更改。
挑战在于我们需要在 ReactJS 应用程序的“外部”进行(不改变后端的实际应用程序代码),通过 Optimizely 注入 JavaScript/jQuery 代码。
所以问题是:有没有办法以某种方式使用 ReactJS 应用程序对象及其方法与应用程序外部注入的 JS/jQuery 代码?
我们的目标是以上述方式更改页面的行为,因此解决此问题的任何其他选项也将有所帮助。
PS 目前解决我们看到的问题的唯一方法是在 JS/jQuery 中完全重新创建过滤器,而不是使用当前的过滤器,这不是非常有效的解决方案。这就是为什么寻找更多的想法。