Vue.jsのアプリケーションでGoogleサインインを実装しています。
現状は$gAuthを呼び出す際に下記のエラーが表示されてしまいます。
vue2.6.11でcomposition apiを使った書き方をしています。
error
1Property '$gAuth' does not exist on type 'CombinedVueInstance<Vue, object, object, object, Record<never, any>>'.Vetur(2339)
component
1<script lang="ts"> 2import { defineComponent } from '@vue/composition-api' 3export default defineComponent({ 4 setup(props, context) { 5 const google = async () => { 6 const googleUser = await context.root.$gAuth.signIn() 7 let profile = googleUser.getBasicProfile(); 8 9 const gUser = { 10 name: profile.getName(), 11 email: profile.getEmail(), 12 image: profile.getImageUrl() 13 } 14 context.root.$store.dispatch("users/google", gUser); 15 } 16 17 return { 18 google 19 } 20 }, 21}) 22</script>
maints
1import Vue from "vue"; 2import App from "./App.vue"; 3import router from "./router"; 4import store from "./store/index"; 5 6import GAuth from 'vue-google-oauth2' 7const gauthOption = { 8 clientId: `${process.env.VUE_APP_GOOGLE_CLIENT_ID}.apps.googleusercontent.com`, 9 scope: 'profile email', 10 prompt: 'select_account' 11} 12Vue.use(GAuth, gauthOption) 13 14Vue.config.productionTip = false; 15 16new Vue({ 17 router, 18 store, 19 render: (h) => h(App), 20}).$mount("#app"); 21
調べたこと
以下を参考にveturの設定など変更しましたがエラー分は消えませんでした。また
https://github.com/vuejs/vetur/issues/2131
https://qiita.com/shunjikonishi/items/3774486d37af80d1ae47
あと、ライブラリを変更して以下を試してみようと思いましたがvueのバージョンが2.6.11だったので断念しました。
https://www.npmjs.com/package/vue3-google-oauth2
どなたかこの部分に知見のある方いましたら、アドバイスいただきたいです。
vue 2.6.11
vue-google-oauth2 1.5.8
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。