插件配置存储在 /config/plugins.js|ts
中(参见 项目结构)。每个插件都可以使用以下可用参数进行配置:
参数 | 描述 | 类型 |
---|---|---|
enabled | 启用(true )或禁用(false )已安装的插件 | 布尔值 |
config 可选 | 用于覆盖默认插件配置 在 strapi-server.js 中定义 | 对象 |
resolve 可选,仅本地插件需要 | 插件文件夹的路径 | 字符串 |
插件的基本示例自定义配置:
js
./config/plugins.js
js
module.exports = ({ env }) => ({
// 启用不需要任何配置的插件
'i18n': true,
// 启用自定义插件
'myplugin': {
// my-plugin 将成为此插件使用的内部名称
enabled: true,
resolve: './src/plugins/my-local-plugin',
config: {
// 用户插件配置在此处
},
},
// 禁用插件
'my-other-plugin': {
enabled: false, // 插件已安装但已禁用
},
})
如果不需要特殊配置,也可以用简写语法“plugin-name”: true 来声明插件。
GraphQL 配置
GraphQL 插件 具有以下特定配置选项,这些选项应在 config/plugins
文件中的 graphql.config
对象中声明。所有参数都是可选的:
参数 | 描述 | 类型 | 默认 |
---|---|---|---|
apolloServer | ApolloServer 的附加配置。 | 对象 | {} |
artifacts | 包含文件路径的对象,定义存储生成的工件的位置。可以包含以下属性:
generateArtifacts 设置为 true 时才有效。 | 对象 |
|
defaultLimit | API 调用中使用的 pagination[limit] 参数 的默认值 | 整数 | 100 |
depthLimit | 限制 GraphQL 查询的复杂性。 | 整数 | 10 |
endpoint | 插件公开的 URL 路径 | 字符串 | /graphql |
generateArtifacts | Strapi 是否应自动生成并输出 GraphQL 模式文件和相应的 TypeScript 定义。 可以通过 artifacts 配置文件系统位置。 | 布尔值 | false |
maxLimit | API 调用中使用的 pagination[limit] 参数 的最大值 | 整数 | -1 |
playgroundAlways | 是否应公开展示游乐场。 如果 NODE_ENV 设置为 development ,则默认启用。 | 布尔值 | false |
shadowCRUD | 是否应自动创建基于模型的查询、突变和解析器的类型定义(参见 Shadow CRUD 文档)。 | 布尔值 | true |
自定义配置示例:
js
./config/plugins.js
js
module.exports = () => ({
graphql: {
enabled: true,
config: {
playgroundAlways: false,
defaultLimit: 10,
maxLimit: 20,
apolloServer: {
tracing: true,
},
}
}
})
上传配置
上传插件 处理 媒体库。使用默认上传提供程序时,可以在 config/plugins
文件中的 upload.config
对象中声明以下特定配置选项。所有参数都是可选的:
参数 | 描述 | 类型 | 默认 |
---|---|---|---|
providerOptions.localServer | 将传递给 koa-static 的选项,在此基础上构建上传服务器。 (有关更多详细信息,请参阅上传文档中的 本地服务器配置) | 对象 | - |
sizeLimit | 最大文件大小(以字节为单位)。 (有关更多信息,请参阅上传插件文档中的 最大文件大小配置) | 整数 | 209715200 (200 MB 以字节为单位,即 200 x 1024 x 1024 字节) |
breakpoints | 当“响应式友好上传”选项设置为 true 时,允许覆盖生成响应式图像的断点大小。(有关更多信息,请参阅上传插件文档中的 响应式图像配置) | 对象 | { large: 1000, medium: 750, small: 500 } |
- 一些配置选项也可以直接从管理面板设置(请参阅 用户指南)。
- 上传请求超时在服务器选项中定义,而不是在上传插件选项中定义,因为它不是特定于上传插件的,而是应用于整个 Strapi 服务器实例。有关更多详细信息,请参阅上传文档中的 上传请求超时配置。
- 使用其他上传提供商时,可能会有其他配置选项可用。对于由 Strapi 维护的上传提供商,请参阅 Amazon S3 提供商 和 Cloudinary 提供商 文档,了解有关可用选项的更多信息。
自定义配置示例:
以下是使用默认上传提供程序时上传插件的自定义配置示例:
js
/config/plugins.js
js
module.exports = ({ env }) => ({
upload: {
config: {
providerOptions: {
localServer: {
maxage: 300000
},
},
sizeLimit: 250 * 1024 * 1024, // 256mb in bytes
breakpoints: {
xlarge: 1920,
large: 1000,
medium: 750,
small: 500,
xsmall: 64
},
},
},
})