strapi-utils 已重构
页面摘要: 在 Strapi 5 中,
strapi-utils包已被重构,工具被重新组织到arrays、dates、strings、objects和async命名空间中,部分工具被移动、替换为服务方法或被移除。
在 Strapi 5 中,核心包 strapi-utils 已重构。本页列出了新增、移除及其他更新。
本页面是破坏性变更数据库的一部分,提供有关该破坏性变更的信息,以及从 Strapi v4 迁移到 Strapi 5 的附加说明。
代码迁移工具: utils-public-interface
变更列表
| 元素 | 变更说明 |
|---|---|
arrays 工具 | 新增,并将 stringIncludes 方法移入其中(请参阅 附加说明)。 |
-
dates工具 -
objects工具 -
async工具 -
strings工具 | 新增(请参阅 附加说明)。 | |strings.getCommonPath| 新增 | |nameToSlug| 移至strings.nameToSlug| |nameToCollectionName| 移至strings.nameToCollectionName| |stringIncludes| 移至arrays.includesString| |stringEquals| 移至strings.isEqual| |isCamelCase| 移至strings.isCamelCase| |isKebabCase| 移至strings.isKebabCase| |toKebabCase| 移至strings.toKebabCase| |toRegressedEnumValue| 移至strings.toRegressedEnumValue| |startsWithANumber| 移至strings.startsWithANumber| |joinBy| 移至strings.joinBy| |keysDeep| 移至objects.keysDeep| |generateTimestampCode| 移至dates.timestampCode| |pipeAsync| 移至async.pipe| |mapAsync| 移至async.map| |reduceAsync| 移至async.reduce| |convertQueryParams| 已替换(请参阅 附加说明)。 | |validate和sanitize| 已更新(请参阅 附加说明)。 | |getCommonBeginning| 已移除 | | -
getConfigUrls -
getAbsoluteAdminUrl -
getAbsoluteServerUrl| 已移除 | |forEachAsync| 已移除 | |removeUndefined| 已移除 | |templateConfiguration| 已移除(请参阅 附加说明)。 |
附加说明
-
templateConfiguration:当以 JSON 加载旧的 v3 配置文件时,此函数用于支持模板。仍在使用该函数的插件开发者如果确实需要,应将其用法替换为真正的模板库。 -
arrays工具:要使用这些新工具:- 在代码中通过
import { arrays, dates, strings, objects } from '@strapi/utils';导入它们。 - 使用它们,例如
arrays.includesString或strings.isEqual。
- 在代码中通过
-
convertQueryParams已被替换:// Strapi v4 import { convertQueryParams } from '@strapi/utils'; convertQueryParams.convertSortQueryParams(...); // 现为私有函数以简化 api convertQueryParams.convertStartQueryParams(...); // 现为私有函数以简化 api convertQueryParams.convertLimitQueryParams(...); // 现为私有函数以简化 api convertQueryParams.convertPopulateQueryParams(...); // 现为私有函数以简化 api convertQueryParams.convertFiltersQueryParams(...); // 现为私有函数以简化 api convertQueryParams.convertFieldsQueryParams(...); // 现为私有函数以简化 api convertQueryParams.convertPublicationStateParams(...); // 现为私有函数以简化 api convertQueryParams.transformParamsToQuery(...); // 变为下方示例 // Strapi 5 // 这些工具需要 strapi 应用上下文,因此我们决定为此暴露一个 strapi 服务 strapi.get('query-params').transform(); -
validate和sanitize现在是strapi.contentAPI函数的一部分:// Strapi v4 import { validate, sanitize } from '@strapi/utils'; validate.contentAPI.xxx(); sanitize.contentAPI.xxx(); // Strapi 5 // 这些方法需要 strapi 应用上下文 strapi.contentAPI.sanitize.xxx(); strapi.contentAPI.validate.xxx();
有关所有可用工具的完整参考,请参阅 strapi-utils 文档。