GrowthBook 致力于支持现代平台,为您带来先进的功能标记和实验。我们很高兴地宣布我们的 JavaScript SDK 在 JSR(现代开源 JavaScript 注册表)上可用。这种集成为 JavaScript 和 Typescript 开发人员提供了在应用程序中实现和管理功能标志的无缝体验。
JSR 简化了发布和导入 JavaScript 模块的过程,提供了强大的功能,例如 TypeScript 支持、自动生成的文档以及通过来源证明增强的安全性。此次合作为 GrowthBook 用户带来了这些好处,简化了开发工作流程中功能标记的集成和利用。
通过 JSR 使用 GrowthBook JS SDK 可以提供出色的开发人员体验、一流的 TypeScript 支持、可在代码编辑器中访问的自动生成文档等等。
使用 deno add 命令开始使用 GrowthBook:
deno add jsr:@growthbook/growthbook
或者使用 npm:
npx jsr add @growthbook/growthbook
上述命令将生成一个 deno.json 文件,列出所有项目依赖项。
{ "imports": { "@growthbook/growthbook": "jsr:@growthbook/growthbook@0.1.2" } }
deno.json
让我们将 GrowthBook 与 Express 服务器一起使用。在我们的 main.ts 文件中,我们可以编写:
import express from "express"; import { GrowthBook } from "@growthbook/growthbook"; const app = express(); // Example using Express app.use(function (req, res, next) { // Create a GrowthBook instance and store in the request req.growthbook = new GrowthBook({ apiHost: "<https://cdn.growthbook.io>", clientKey: "sdk-qtIKLlwNVKxdMIA5", }); // TODO: Add user targeting attributes from cookies, headers, etc. req.growthbook.setAttributes({ id: req.user?.id, }); // Clean up at the end of the request res.on("close", () => req.growthbook.destroy()); // Wait for features to load (will be cached in-memory for future requests) req.growthbook.init({ timeout: 1000 }).then(() => next()); }); app.get("/", (req, res) => { const gb = req.growthbook; // Boolean on/off flag if (gb.isOn("my-boolean-feature")) { res.send("Hello, boolean-feature!"); } // String/Number/JSON flag const value = gb.getFeatureValue("my-string-feature", "fallback"); res.send(`Hello, ${value}!`); }); console.log("Listening on port 8000"); app.listen(8000);
最后可以运行以下命令来执行:
deno -A main.ts
根据您在 GrowthBook 中设置功能标记的方式(免费注册),响应将会有所不同:
查看我们的官方文档以了解有关功能标志、创建和运行实验以及分析实验的更多信息。
GrowthBook 的 JS SDK 现在采用 JSR,可以更轻松地将功能标志和 A/B 测试的强大功能引入任何 JavaScript 环境。
以上是在 JSR 上宣布 GrowthBook的详细内容。更多信息请关注PHP中文网其他相关文章!