config/features.js|ts
文件用于启用功能标志。目前,此文件仅包含一个 future
对象,用于通过 future flags 启用实验性功能。
一些即将推出的 Strapi 功能尚未准备好发送给所有用户,但 Strapi 仍为社区用户提供了对这些新功能或更改提供早期反馈的机会。借助这些实验性功能,开发人员可以灵活地选择新功能和更改并将其集成到他们的 Strapi 应用程序中,因为它们在当前主要版本中可用,并帮助我们塑造这些新功能。
此类实验性功能在整个文档中以 Future
徽章表示,启用这些功能需要启用相应的未来标志。未来标志与处于 alpha 阶段的功能不同,因为未来标志默认处于禁用状态。
启用未来标志风险自负。实验性功能可能会更改或删除,可能包含重大更改,可能不稳定或尚未完全准备好使用,并且某些部分可能仍在开发中或使用模拟数据。
启用特色功能标志
要启用未来标志:
- (可选)如果服务器正在运行,请使用
Ctrl-C
停止它。 - 打开
config/features.js|ts
文件,如果文件尚不存在,则创建它。该文件将导出一个future
对象,其中包含要启用的所有未来标志。 - 要启用未来标志,请将其属性名称(参见 完整列表)添加到
future
对象,并确保该属性的值设置为true
。以下示例显示如何启用contentReleasesScheduling
未来标志:
js
/config/features.js
js
module.export = ({ env }) => ({
future: {
// 您也可以简单地写:contentReleases: true
contentReleasesScheduling: env.bool('STRAPI_FUTURE_CONTENT_RELEASES_SCHEDULING', false),
},
})
此示例假设您的应用程序根目录中有一个 .env
环境文件,并且该文件包含以下行:
.env
sh
STRAPI_FUTURE_CONTENT_RELEASES_SCHEDULING=true
如果您的环境文件不包含此值,则 contentReleasesScheduling
或 contentReleases
未来标志属性值将默认为 false
,并且不会启用实验性功能。
- 重建管理面板并重新启动服务器:
shyarnsh
yarn develop
未来标志 API
开发人员可以使用以下 API 与未来标志进行交互:
- 功能配置是
config
对象的一部分,可以使用strapi.config.get('features')
或strapi.features.config
读取。 strapi.features.future
返回isEnabled()
,可用于确定未来标志是否已启用,使用以下方法:strapi.features.future.isEnabled('featureName')
。
可用的未来标志
目前没有可用的未来标志。一旦有新的实验性功能可供测试,本节将更新。