GraphQL.js (GraphQLJS)是 JavaScript 参考实现 GraphQL 的一个技术预览,Facebook 开发的一种查询语言,用于在复杂的应用程序的数据模型中,描述数据要求。
使用示例:
从 npm 安装 GraphQL.js
npm install graphql
首先,建立GraphQL 型架构映射到你的代码库。
import { graphql, GraphQLSchema, GraphQLObjectType, GraphQLString } from 'graphql';var schema = new GraphQLSchema({ query: new GraphQLObjectType({ name: 'RootQueryType', fields: { hello: { type: GraphQLString, resolve: () => 'world' } } }) });
然后,服务针对该类型架构的查询结果。
var query = '{ hello }'; graphql(schema, query).then(result => { // Prints // { // data: { hello: "world" } // } console.log(result); });
这将运行一个查询获取定义一个字段。 graphql
功能将首先确保查询语法和语义有效执行,否则报告错误。
var query = '{ boyhowdy }'; graphql(schema, query).then(result => { // Prints // { // errors: [ // { message: 'Cannot query field boyhowdy on RootQueryType', // locations: [ { line: 1, column: 3 } ] } // ] // } console.log(result); });
前言 javascript端的使用也比较方便, 首先 安装 express express-graphql graphql npm install express express-graphql graphql --save 下面让我们修改我们的“hello world”示例,以便它是一个API服务器 /** * Created by TF016591 on 2017/11/2. */ va
GraphQL 官方解释为:一种用于 API 的查询语言 (文章不断完善中...我是写一点更新下) 前面有写过一篇文章《Next.js服务端渲染框架实战》中有提到会把数据请求与后端交互的方式从restful API方式切换成GraphQL方式。这篇文章将会尝试用GraphQL的方式与后端进行数据交互,先立个Flag,写个本地demo,实现基本的CURD(数据的增删改查)操作,欢迎大家一起交流讨论。
概述 使用find()方法在MongoDB集合中查询数据。MongoDB所有的查询范围都是单个集合的。也就是说MongoDB不能跨集合查询数据。 查询可以返回集合中的所有文档,或者仅仅返回指定过滤条件的文档。你可以指定一个过滤条件或才一个判断条件作为参数传递给find()方法。 find()方法在一个游标中返回所有的结果集,通过游标的迭代可以输出所有文档。 查询集合中的所有文档 查询集合中的所有文
获取单个数据 获取单个数据的方法包括: 取出主键为1的数据 $user = UserModel::get(1); echo $user->user_nickname; // 使用数组查询 $user = UserModel::get(['user_nickname' => '老猫']); // 使用闭包查询 $user = UserModel::get(function($query){
数据库操作使用 Db类封装方法,请事先在引入 Db类 use think\Db; 以上可以引入 Db,后面的文档不再说明,直接使用; 查询一个数据使用: // table方法必须指定完整的数据表名 Db::name('user')->where('id',1)->find(); find 方法查询结果不存在,返回 null 查询数据集使用: Db::name('user')->where('s
获取单个数据 获取单个数据的方法包括: 取出主键为1的数据 $user = UserModel::find(1); echo $user->user_nickname; 如果你是在模型内部,请不要使用$this->user_nickname的方式来获取数据,请使用$this->getAttr('user_nickname') 替代。 或者在实例化模型后调用查询方法 $user = new Use
数据库操作使用 Db类封装方法,请事先在引入 Db类 use think\facade\Db; 以上可以引入 Db,后面的文档不再说明,直接使用; 查询一个数据使用: // table方法必须指定完整的数据表名 Db::name('user')->where('id',1)->find(); find 方法查询结果不存在,返回 null 查询数据集使用: Db::name('user')->w
我们废弃了v2.0的一些API,如 getItems(), getItem() 这些API的参数太多,不容易记得,现在都采用find(), findOne(), findById() 来替换了,全部使用连贯操作。 查询数据列表 public function find(); public function getList($sql) $model->getList("select * from u