使用 Apollo+Vue:“更新”回调都有哪些参数?

Posted

技术标签:

【中文标题】使用 Apollo+Vue:“更新”回调都有哪些参数?【英文标题】:Using Apollo+Vue: What parameters are given to the "update" callback?使用 Apollo+Vue:“更新”回调有哪些参数? 【发布时间】:2018-03-21 08:04:23 【问题描述】:

这是一个与 javascript 相关的语法问题。我正在关注这个 GraphQL 教程: https://www.howtographql.com/vue-apollo/4-routing/

this.$apollo.mutate 中有一个名为“update”的回调,它接受一个“data”参数,如下所示:

update: (store,  data:  createLink  ) => 
    const data = store.readQuery(
        query: ALL_LINKS_QUERY
    )
    data.allLinks.push(createLink)
    store.writeQuery( query: ALL_LINKS_QUERY, data )

什么是“ data: createLink ”?这是一个对象吗?虽然“createLink”参数是在箭头函数的主体内定义的,但“data”不是。愚蠢的问题,但我不知道这甚至被称为能够研究它(JS初学者)。看起来像 ES6 解构,但是我找不到类似的例子。

【问题讨论】:

【参考方案1】:

这是对象解构。它将创建一个名为createLink 的新变量。它在 ES5 中的代码是:

update: (store, params2) 
  const createLink = params2.data.createLink
  ...

您可以在https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#Nested_object_and_array_destructuring阅读更多相关信息

【讨论】:

以上是关于使用 Apollo+Vue:“更新”回调都有哪些参数?的主要内容,如果未能解决你的问题,请参考以下文章

ALSA PCM 回调都有哪些限制?

在 nuxt/vue 中来自 apollo 的数据发生变化后,子元素不更新道具

JavaScript 中的闭包/回调函数都有哪些用例?

什么是形参和实参?参数传递的方式都有哪些?

Vue-apollo 从另一个组件重新获取查询

Vue-Apollo 和查询自动完成