Akryum / Akryum/vue-apollo-example

How can I port this example for use with scaphold.io

未关闭
#2 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看
主要语言
Vue
星标
108
派生
23
PR 合并指标
30 天内没有已合并 PR

描述

I can't seem to grasp your use of client. In the example you are using a web socket client.
When I try to use vue-apollo with scaphold.io config, it fails with `$apollo.client` `undefined` and also shows `query` and `mutate` properties with TypeError since `undefined`.
What gives?

screenshot 2017-01-18 10 51 50

As you can see I experimented with trying to use localhost as ws client, then disabled on advice from @vince from scaphold.io

```js
import ApolloClient, { createNetworkInterface } from 'apollo-client'
// import { Client } from 'subscriptions-transport-ws'
// import { addGraphQLSubscriptions } from 'vue-apollo';
import config from '../config/client'

const networkInterface = createNetworkInterface({
uri: config.scapholdUrl,
transportBatching: true
})

// const wsClient = new Client('ws://localhost:3001')

// const networkInterfaceWithSubscriptions = addGraphQLSubscriptions(
// networkInterface,
// wsClient,
// )

networkInterface.use([{
applyMiddleware (req, next) {
if (!req.options.headers) {
req.options.headers = {} // Create the header object if needed.
}
if (localStorage.getItem('token')) {
req.options.headers.Authorization = `Bearer ${localStorage.getItem('token')}`
}
next()
}
}])

const client = new ApolloClient({
networkInterface // : networkInterfaceWithSubscriptions
})

// Install the vue-apollo plugin and use the apollo client
Vue.use(VueApollo, {
client
})

new Vue({
...App,
apollo: {
// Apollo specific options
}
}).$mount('#app')
```

贡献指南

这个仓库没有索引到贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。