Comments (6)
I forgot to change that in the doc! It is now this.$apollo.provider.defaultClient
or this.$apollo.provider.clients.<key>
.
from apollo.
Thanks @Akryum!
from apollo.
I've got
"apollo-client": "^1.0.2",
...
"vue-apollo": "^2.1.0-beta.2",
and am still getting this.$apollo is undefined...
i know my provider is there, because my query is working. my component looks like this:
<template>
<div>
<input type="text" v-model="name" placeholder="company name">
<button v-on:click="saveCustomer({name: name})">Save</button>
<p>{{ allCustomers }}</p>
</div>
</template>
<script>
import gql from 'graphql-tag'
const createCustomerMutation = gql`mutation CreateCustomer($name: String!) {
createCustomer(name: $name) {
id,
name
}
}`
const allCustomersQuery = gql`query {
allCustomers {
id,
name
}
}`
export default {
data () {
return {
name: '',
allCustomers: []
}
},
methods: {
saveCustomer: (companyInfo) => {
console.log('this', this)
console.log('this.$apollo', this.$apollo)
this.$apollo.provider.defaultClient.mutate({
mutation: createCustomerMutation,
variables: companyInfo
})
.then(data => {
console.log(data)
})
.catch(error => {
console.log('ERROR', error)
})
}
},
apollo: {
allCustomers: allCustomersQuery
}
}
</script>
from apollo.
The setup changed a bit with the new beta. Did you pass it into your root component?
https://github.com/Akryum/vue-apollo#create-a-provider
from apollo.
gah...
can't use arrow functions:
...
...
methods: {
** saveCustomer (companyInfo) { **
console.log('this', this)
console.log('this.$apollo', this.$apollo)
this.$apollo.provider.defaultClient.mutate({
mutation: createCustomerMutation,
variables: companyInfo
})
.then(data => {
...
all is good now
from apollo.
@stlbucket Using arrow functions for declaring methods is a very bad idea, since you lose the this
context of the component (it's what arrow functions are for), and instead get window
: this.$apollo
is then equivalent to window.$apollo
which fails.
That said, it's recommended to use arrow functions inside methods to keep the component this
context. 😉
from apollo.
Related Issues (20)
- Remove automatic subscription retry on error
- Can't receive messages in a chat using subscription
- skip() doesn't skip query HOT 1
- @vue/apollo-ssr doesn't work in SSR mode
- Fragments aren't returned in results when using useQuery/useLazyQuery reactive refs HOT 2
- Using vue-apollo-composable inside a Pinia setup store HOT 2
- `useApolloClient` checks wrong conditions before calling `inject()`
- useQuery blocks page load on 4.0.0 HOT 2
- useQuery with fetchPolicy: cache-only does not return expected data HOT 3
- Doesn't update the data after a mutation if `enabled` is `false` in `useQuery`
- Queries are not executed in given order
- @vue/[email protected] has a peer dependency conflict with Vue 3 HOT 4
- [docs] The installation guide is very bad HOT 1
- Refetch with New Variables Overrides Other Existing Refetches HOT 1
- `onBeforeUnmount` hook in `useQuery` is undesirable when used in pinia store HOT 1
- [Documentation] Composition API + Options API Configuration, how to make it work together? HOT 2
- Updating the `variables` ref does not work when using the function form
- Production breaks, dev mode works (Apollo client with id default not found.) HOT 3
- onResult does not fire on the first load of useLazyQuery HOT 5
- @vue/apollo-option - memory leak on SSR render
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from apollo.