the-under-scorer/wpk-core-graphql

wpk-core的Graphql扩展

0.4.0 2019-10-10 12:27 UTC

README

这是一个为wpk-core框架创建Graphql服务器的插件。使用优秀的graphqlite库。

用法

  1. 安装: composer require the-under-scorer/wpk-core-graphql
  • 在您的routes.php文件中添加graphql路由
   <?php
   
   use UnderScorer\Core\Http\Router;
   use UnderScorer\GraphqlServer\Http\Controllers\GraphqlServer;
   
   /**
    * @var Router $router
    */
   
   $router
       ->route()
       ->any()
       ->match( '/graphql' )
       ->controller( GraphqlServer::class );
  • SchemaProviderDataLoaderProvider添加到您的providers.php文件中

    <?php
    
    use UnderScorer\Core\Providers\CacheProvider;
    use UnderScorer\Core\Providers\DatabaseProvider;
    use UnderScorer\Core\Providers\EnqueueProvider;
    use UnderScorer\Core\Providers\FileSystemProvider;
    use UnderScorer\Core\Providers\LoggerProvider;
    use UnderScorer\Core\Providers\NoticesProvider;
    use UnderScorer\Core\Providers\RouterProvider;
    use UnderScorer\Core\Providers\SerializerProvider;
    use UnderScorer\Core\Providers\ValidationProvider;
    use UnderScorer\Core\Providers\ViewProvider;
    use UnderScorer\GraphqlServer\Providers\SchemaProvider;
    use UnderScorer\GraphqlServer\Providers\DataLoaderProvider;
    
    return [
        CacheProvider::class,
        RouterProvider::class,
        SchemaProvider::class, // Graphql Schema Provider,
        DataLoaderProvider::class, // DataLoader Provider
        SerializerProvider::class,
        FileSystemProvider::class,
        EnqueueProvider::class,
        ViewProvider::class,
        NoticesProvider::class,
        LoggerProvider::class,
        DatabaseProvider::class,
        ValidationProvider::class,
    ];
  • 将库路径添加到composer.json中的"autoload.psr-4",这是为了使用由该库提供的Graphql类型和控制器(需要)

{
    "autoload": {
        "psr-4": {
          "UnderScorer\\GraphqlServer\\": "vendor/the-under-scorer/wpk-core-graphql/src/GraphqlServer"
        }
      }
}