问题标签 [featuretoggle]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
20 浏览

reactjs - 如何使用 React Router 使用适当的组件生成路由

我正在尝试使用“功能”对象中的适当组件生成路由。我们的想法是拥有一组可以启用或禁用的站点功能,以及从该集合生成的路线/导航菜单项。类似于路线和导航项目的功能切换。我已经到了页面运行的范围,但是任何导航都只加载列表中的第一项,尽管 url 在浏览器的 url 栏中更新。

这是“功能”对象:

这是 index.tsx

这是 app.tsx

这是功能切换集合

在反应方面,我是一个年轻的学徒,所以我可能走错了路,但任何建议如何完成这项工作将不胜感激。谢谢。

0 投票
0 回答
24 浏览

vue.js - Vue.js 中是否有一种方法可以使用一组不同的文件或可通过全局变量配置的功能进行构建?

我希望能够基于预先设置的环境变量构建不同版本的 Vue.js 应用程序。动态组件对我来说不够强大,理想情况下是在编译时寻找一种方法来配置包含或排除构建中的任何项目文件。

我尝试使用 Webpack 定义插件。它似乎不允许我修改导入路径。

在 vue.config.js 中

在应用程序中

这没有解析为“./file_featureOne”。同样,在 .env 文件中使用 VUE_APP_PRODUCT 然后希望默认 Vue 内联 env 常量也不起作用。

获得的输出 webpack 配置vue inspect --mode local > output.prod.js看起来应该是这样。任何这些尝试都会产生

未找到此相关模块:

  • ./file_NODE_PRODUCT 在路径中

如果这是不可能的,我还有什么其他方法可以让我在编译时对构建中包含的文件有类似程度的控制?

0 投票
1 回答
228 浏览

java - 释放基于 DATETIME 范围的 Spring Boot 微服务的 FEATURE TOGGLE?

我正在查看 UNLEASH 功能切换的文档,因为我想在我的 Spring Boot 应用程序微服务 (API) 中添加一些功能标志功能。

我想在代码库中“包装”逻辑,例如:

但是,我相信 Unleash API 有一个 UI Web 应用程序,您可以访问这些应用程序来打开或关闭这些切换(1 或 0)。有人必须手动将 URL 输入浏览器并移动滑块/UI 元素以打开或关闭“功能”。但是我想改为“打开”这些基于 DATE 范围的切换。例如,我想设置一个日期时间2021-12-30 00:00:00,这样切换将在 2021 年 12 月 30 日变为 ACTIVE 或 ON(无需任何手动干预,即有人必须转到 UI/网页并单击一些按钮)。拥有“有效”和“结束”日期也很棒,即上述示例的结束日期时间可以是2022-05-30 23:59:59,这样切换会在 2022 年 5 月 30 日晚上 11:59 自动关闭。

这可能吗?是否有任何功能标志库具有此功能?

0 投票
2 回答
268 浏览

java - 将“Togglz”功能切换库添加到 Spring Boot REST API

我正在尝试使用Togglz库,它允许您包装应用程序逻辑并能够使用一些高级策略将其切换为 ON 或 OFF。我正在阅读它的 Spring Boot 文档,虽然它非常简洁,但我发现它缺少一些不允许我正确测试的信息。

参考: https ://www.togglz.org/documentation/spring-boot-starter.html

  1. 我正在运行一个Spring Boot 2.4.5版本的项目,这个文档说要导入依赖项,我这样做了:
  1. 然后文档说明您可以在@RestController上使用自动配置类,例如

这里已经是我有一些我没有看到解释的问题,首先,将枚举“HELLO_WORLD”作为参数传递给isActive()FeatureManager 上的这个函数。我看不到他们如何将其注入方法/类中。他们确实展示了如何在 yaml 中声明 ENUM 特性,但是,这并没有引用前面提到的传递给 isActive() 方法的“HELLO_WORLD”,即:

在文档的下方,他们最终确实引用了这个HELLO_WORLD枚举,但我尝试将它添加到我的 application.yaml 中,但我似乎无法弄清楚他们如何将这些功能枚举注入这些方法中:

该文档确实解释了如何为这些功能创建一个枚举类,但他们明确将其列为在 yaml 文件中定义它的替代方法

我也试过这个,当我尝试运行应用程序时,我得到了更多的 Bean 异常错误,即

成功使用此库的任何人都可以提供输入如何设置简单的功能切换吗?最终,我希望能够在应用程序使用RELEASE DATE 激活策略时打开/关闭此功能,即2021-06-30 00:00:00我可以根据日期时间激活切换。

参考:https ://www.togglz.org/documentation/activation-strategies.html

这可以在yaml中完成吗?

0 投票
2 回答
65 浏览

ios - 在生产模式下隐藏功能切换

我想在我们的应用程序的设置包中创建一个功能切换。因此,如果我们打开/关闭切换,我们可以显示/隐藏当前正在开发的特定功能。但是,我还不想在生产设置上显示切换选项。下载该应用程序的用户不需要看到此功能。那么,如果它处于生产模式,我如何隐藏切换?

0 投票
0 回答
25 浏览

ios - 在 root.plist 中隐藏/显示切换

我想在设置包的 Root.plist 中添加一个切换功能。我想隐藏生产中的切换并在开发版本中显示它,因为该功能不完整。我添加了切换并使用调试和发布检查检查了 didfinishlaunching 方法中的条件。但是切换仍然出现在两个版本上。条件检查只会阻止切换的功能,但不会完全隐藏切换。任何帮助将不胜感激

0 投票
1 回答
48 浏览

security - 功能标志对授权/权限有用吗?

功能标志或功能切换非常适合管理谁可以看到什么功能。这个问题的想法是我们可以使用相同的功能标志工具来管理授权/用户权限。

例如,我们可以使用一些功能标志工具来控制对管理页面的访问吗?如果不是,不使用它的原因是什么?

0 投票
2 回答
49 浏览

continuous-integration - 在不同版本的移动应用程序中使用功能标志作为终止开关

如果我的移动应用程序版本出现问题,我有兴趣使用功能标志作为终止开关,以快速将应用程序上的功能恢复到该功能的最新工作版本或完全隐藏该功能。

但是我对如何在应用程序的以下版本中管理相同的功能标志有一个逻辑上的疑问,之后我在应用程序的先前版本中杀死了该功能。我试着用一个例子来解释。

第 1 天我开发了一个新功能 A 我在这个新功能上实现了功能切换 A 我部署在 Play 商店 myApp 1.0 上,功能切换 A 打开(服务器端)

第 2 天,我注意到功能 A 出现问题,所以我将其关闭,关闭功能切换 A(服务器端)

但现在我无法再次打开(服务器端)功能切换 A,因为它会在应用程序的 bot 版本上打开该功能

所以我每次使用 kill switch 时都必须实现一个新的切换?有什么建议或链接吗?谢谢

0 投票
1 回答
37 浏览

featuretoggle - 如何支持未来的功能标志 - 例如。该网站将在 10 分钟后关闭

在功能标志产品中(旗舰、launchdarkly、unleashed 等),您可以打开和关闭功能标志。

在某些情况下,将来会发生切换。例如,网站将在 xx 分钟后关闭

鉴于您只有开/关切换,我们如何最好地实现此类功能切换?使用两个功能标志?一个指定站点将在 10 分钟内关闭,另一个切换以实际关闭站点。

0 投票
1 回答
6 浏览

angular - 在单元测试中模拟 Unleash 客户端 SDK 的问题

我在 Angular webapp 中使用 Unleash SDK 客户端在应用程序中具有功能切换功能。

我添加了一项服务并使用了来自“unleash-proxy-client”的 UnleashClient;在为我添加的服务编写单元测试时,我必须模拟 UnleashClient,并做到了。但是诸如'on'之类的事件并没有得到解决。有谁知道如何处理这个问题?

错误:

this.unleash.on 不是函数

代码:

规格: