博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
React-Apollo-Prisma-Graphql
阅读量:7116 次
发布时间:2019-06-28

本文共 1771 字,大约阅读时间需要 5 分钟。

  create-react-app: https://facebook.github.io/create-react-app/docs/getting-started  

  Apollo:

  Prisma:https://www.prisma.io/docs/

  首先,在创建客户端之前,跟着Prisma教程起一个server,我这里的server地址:localhost:4000。然后,跟着create-react-app创建一个react项目,启动。

  接着,在react项目中安装依赖:

npm install apollo-boost react-apollo graphql --save

  创建一个客户端,并且指向Graphql服务器:

1 import ApolloClient from 'apollo-boost';2 3 const client = new ApolloClient({4   uri: "http://localhost:4000"5 });

  创建一个Provider,直接用react-apollo里的ApplloProvider组件,用ApolloProvider作为一个容器去包裹其他需要访问Graphql服务器数据的react组件。

import { ApolloProvider } from "react-apollo";
1 class App extends Component { 2   render() { 3     return ( 4       
5
6

My first Apollo app ?

8
9
10 );11 }12 }

   现在我们已经创建好了ApolloClient实例并且使用ApolloRrovider将client传进react组件,可以开始从Graphql服务器中取数据到react组件中了。引入gql和Query,查询我们事先在Graphql服务器上事先建好的数据,以下数据查询已有的panel并显示panel的id和title。

import gql from "graphql-tag";import { Query } from "react-apollo";
const ExchangeRates = () => (  
{({ loading, error, data }) => { if (loading) return

Loading...

; return (

{data && data.panels[0].title}

{error && (
                              {error &&                  error.graphQLErrors[0] &&                  error.graphQLErrors[0].message}                          
)} {data && data.panels &&

{data.panels[0].title}

}
); }}
);

  将ExchangeRates添加到react组件中,完毕。

class App extends Component {  render() {    return (      

My first Apollo app ?

); }}

 

转载于:https://www.cnblogs.com/zhaoyzml/p/10192033.html

你可能感兴趣的文章
[LintCode] Subarray Sum Closest
查看>>
发展需要大师,繁荣更需批评——GIS现状堪忧
查看>>
MapXtreme2004 连接oracle spatial的问题
查看>>
resources about DOM-Drag
查看>>
Bootstrap 3之美03-独立行,文字环绕,图片自适应,隐藏元素
查看>>
K星异客
查看>>
ASP.NET Web API中实现版本的几种方式
查看>>
咏南WEB APP开发框架
查看>>
Android Activity界面切换添加动画特效 (转载修改)
查看>>
正则表达式元字符
查看>>
Composer Player 属性设置
查看>>
使用二维NDRange workgroup
查看>>
Python内置函数filter, map, reduce
查看>>
linux下查看某软件是否已安装, ubuntu安装deb包
查看>>
Python中的logging模块
查看>>
Macaca-iOS入门那些事2
查看>>
使用Eclipse构建GeoTools项目
查看>>
[转] 飞信协议
查看>>
项目中的技巧经验汇总
查看>>
动态规划算法
查看>>