草庐IT

go-graphql

全部标签

javascript - Relay/GraphQL 'resolve' 是如何工作的?

我正在尝试Relay和GraphQL.当我在做模式时,我是这样做的:letarticleQLO=newGraphQLObjectType({name:'Article',description:'Anarticle',fields:()=>({_id:globalIdField('Article'),title:{type:GraphQLString,description:'Thetitleofthearticle',resolve:(article)=>article.getTitle(),},author:{type:userConnection,description:'The

javascript - 如何让 Redux Thunk 和 Apollo GraphQL 协同工作

在我的项目中,ReduxThunk用于在actioncreator中保留所有异步函数。现在我正在尝试将ApolloGraphQL添加到我的项目中,一切正常,除了在我的功能组件中添加mutations并在那里调用它们时,它破坏了reduxthunk架构。如何解决?我想我可以创建新的actioncreator方法并将突变传递给它们,但它很快就会变成样板,这对我来说似乎不是一个好的解决方案。 最佳答案 Apollo突变不会破坏reduxthunk架构。如果您需要在突变后更新自己的reducer,请从突变的then或catch中分派(dis

javascript - history.go(-1) 不适用于 chrome。还有其他选择吗?

在我的项目中,我使用下面的Javascript代码history.back();返回上一页。(如窗口上的后退箭头)。此功能在IE和Firefox上运行良好,但在googlecrome上运行不正常?我得到下面的错误ConfirmFormResubmissionThiswebpagerequiresdatathatyouenteredearlierinordertobeproperlydisplayed.Youcansendthisdataagain,butbydoingsoyouwillrepeatanyactionthispagepreviouslyperformed.PressRel

javascript - 在 GraphQL 中的突变之前删除只读字段

我的模式中有一个名为Article的类型:typeArticle{id:ID!updated:DateTimeheadline:Stringsubline:String}对于它的更新,updateArticle(id:ID!,article:ArticleInput!)突变使用相应的输入类型:inputArticleInput{headline:Stringsubline:String}突变本身看起来像这样:mutationupdateArticle($id:ID!,$article:ArticleInput!){updateArticle(id:$id,article:$articl

javascript - 如何在 GraphQL 中创建自定义对象列表

我目前正在研究Facebook的一系列新技术。我在使用GraphQL模式时遇到了一点问题。我有这个对象模型:{id:'1',participants:['A','B'],messages:[{content:'Hithere',sender:'A'},{content:'Hey!Howareyoudoing?',sender:'B'},{content:'Prettygoodandyou?',sender:'A'},];}现在我想为此创建一个GraphQL模型。我这样做了:vartheadType=newGraphQLObjectType({name:'Thread',descript

javascript - 如何解析 GraphQL 中的嵌套类型?

我在解析graphql嵌套类型时遇到问题。我可以成功地触发UserMetrics嵌套解析器,但父解析器对象(用户)为空。我是否误解了GraphQL解析器映射?架构:typeUser{id:String!metrics:UserMetrics}typeUserMetrics{lastLogin:String!}解析器:Query:{user(_,{id},ctx){return{id};}},User:{metrics():({}),//UserMetrics.lastLogindoesn'tfirewithoutthis},UserMetrics:{lastLogin(user){co

javascript - 从 GraphQL 响应中清除不需要的字段

我有一个我的GraphQL客户端请求的对象。这是一个相当简单的对象:typeElement{content:[ElementContent]elementId:Stringname:Stringnotes:Stringtype:StringcreatedAt:StringupdatedAt:String}使用特殊类型ElementContent,它很小,看起来像这样:typeElementContent{content:Stringlocale:String}现在,当我在客户端查询这个时,顶级对象和低级对象都有额外的属性(如果我试图按原样克隆主体,这会干扰更新对象);值得注意的是,Gr

javascript - GraphQL 对象属性应该是一个字符串列表

如何为GraphQL中的字符串数组对象属性创建架构?我希望响应看起来像这样:{name:"colors",keys:["red","blue"]}这是我的架构varkeysType=newgraphql.GraphQLObjectType({name:'keys',fields:function(){key:{type:graphql.GraphQLString}}});varColorType=newgraphql.GraphQLObjectType({name:'colors',fields:function(){return{name:{type:graphql.GraphQLS

javascript - Controller 中有 $state.go 方法的单元测试 Controller

如何为具有$state.go()且预期重定向到特定状态的函数编写单元测试?$scope.inviteMembers=(id)=>{$state.go('invite',{deptId:id});} 最佳答案 既然是单元测试,你只需要确保函数被调用,仅此而已。沿着这条线的东西:it('shouldmovetotheinvitepageafterinvitingsomeone',function(){spyOn($state,'go');$scope.inviteMembers(1);expect($state.go).toHaveBe

javascript - 带有 Lambda 的 Graphql Yaga Playground - "Server cannot be reached"

我正在使用servlerless/lambda设置graphql端点,并且在尝试连接到graphql-yoga附带的graphqlplayground时收到错误。当我去到有Playground(/playground)的路线时,它会启动Playground界面,但它只是说:Servercannotbereached在Playground的右上角。值得注意的是,我正在使用makeRemoteExecutableSchema实用程序来代理到另一个graphql端点(这是我的名为Prismic的CMS)。我不认为这是问题所在,因为在普通的快速服务器上进行测试时,我已经成功地将它连接到Play