thecodingmachine/graphqlite-misc-types

一组用于与 GraphQLite 一起使用的非标准 GraphQL 类型。

dev-master / 4.0.x-dev 2020-03-09 08:50 UTC

README

Latest Stable Version Total Downloads Latest Unstable Version License Scrutinizer Code Quality Build Status Coverage Status

GraphQLite 杂项类型

此包是 GraphQLite PHP 库的附加组件。它包含一组可以添加到 GraphQLite 中的 GraphQL 标量类型。

安装

$ composer require thecodingmachine/graphqlite-misc-types

"任何"标量类型

此类型添加了对 "AnyScalar" 类型的支持,可以是 "string","int","float" 或 "bool" 中的任何一种。

使用方法

/**
 * @Query()
 * @param scalar $scalar
 * @return scalar
 */
public function echoScalar($scalar)
{
    return $scalar;
}

在 DocBlock 中使用 "scalar" 类型提示将值转换为 "AnyScalar"。

注册 AnyScalar

使用 SchemaFactory

如果您正在使用 SchemaFactory 来初始化 GraphQLite,请使用以下代码添加对 AnyScalar 的支持

$schemaFactory->addRootTypeMapper(new \TheCodingMachine\GraphQLite\Types\AnyScalar\AnyScalarTypeMapper());

使用 Symfony 扩展包

如果您正在使用 Symfony 扩展包来初始化 GraphQLite,则将 AnyScalarTypeMapper 注册为服务

# config/services.yaml
services:
    TheCodingMachine\GraphQLite\Types\AnyScalar\AnyScalarTypeMapper:
        tags: ['graphql.root_type_mapper']