Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vue.js 使用Apollo&;重命名页面;Vue路由器_Vue.js_Graphql_Vue Router_Apollo - Fatal编程技术网

Vue.js 使用Apollo&;重命名页面;Vue路由器

Vue.js 使用Apollo&;重命名页面;Vue路由器,vue.js,graphql,vue-router,apollo,Vue.js,Graphql,Vue Router,Apollo,我想根据阿波罗接收到的数据来重新命名页面的标题。 例如,在urlmyproject.com/media/title1,我的GraphQL回复是: { "data": { "creation": { "id": "1", "title": "Title1", "creationDate": "2019-09-22 07:37:57 UTC", "coverUrl": "linktomedia.com/imag

我想根据阿波罗接收到的数据来重新命名页面的标题。

例如,在url
myproject.com/media/title1
,我的GraphQL回复是:

{
  "data": {
    "creation":
      {
        "id": "1",
        "title": "Title1",
        "creationDate": "2019-09-22 07:37:57 UTC",
        "coverUrl": "linktomedia.com/image.jpg",
      }
  }
}
我想在
data->creation->title
中获取标题作为我的标题页名称

我该怎么做


谢谢。

我不确定,但您应该看看(Vue.js的集中式状态管理)。您可以运行一个方法来检查收到的数据,并根据该数据更改标题

vue apollo
智能查询提供一个
结果
回调,在查询完成时调用该回调。您可以在回调内完成依赖于数据的任何操作,包括更改标题。比如:

apollo: {
  creation: {
    query: YOUR_QUERY,
    result: ({ data }) => {
      document.title = data.creation.title
    },
  }
}

在获取数据文档后尝试此操作。title=data.creation.title