Coder Social home page Coder Social logo

Comments (8)

valere-hope avatar valere-hope commented on June 9, 2024

same problem

from vue-social-sharing.

muzicaed avatar muzicaed commented on June 9, 2024

I got this problem as well. But I dont think it is an issue with vue-social-sharing. The nuxt support is for Nuxt 2 if I understand it correctly. In Nuxt 3 it is possible to simply register the Vue plugin directly:

Create a new file in the plugins folder.
Register the vue-social-sharing plugin (not the vue-social-sharing/nuxt):

See: https://nuxt.com/docs/guide/directory-structure/plugins#vue-plugins

This will work:
plugins/vue-social-sharing.client.js:

import VueSocialSharing from 'vue-social-sharing';
export default defineNuxtPlugin((nuxtApp) => {
  nuxtApp.vueApp.use(VueSocialSharing);
});

If using SSR make sure to wrap it in a ClientOnly tag to avoid it getting rendered twice.

<ClientOnly>
  <ShareNetwork
    network="twitter"
    url="https://news.vuejs.org/issues/180"
  >
    <span>Share on Twitter</span>
  </ShareNetwork>
</ClientOnly>

from vue-social-sharing.

ifault avatar ifault commented on June 9, 2024

@muzicaed get new error on this way. Cannot set properties of undefined (setting '$SocialSharing')

from vue-social-sharing.

TheMukhtarAhmed avatar TheMukhtarAhmed commented on June 9, 2024

@muzicaed get new error on this way. Cannot set properties of undefined (setting '$SocialSharing')

follow these steps:

Install the specified version by running either of the following commands:

Using Yarn: yarn add vue-social-sharing@next
Using npm: npm install --save vue-social-sharing@next

Version to install:
For Vue 3, Nuxt3: "vue-social-sharing": "^4.0.0-alpha4"

Utilize it as a plugin in Nuxt, rather than a module.
If you encounter any issues, you can resolve them by creating a custom plugin. Follow these steps:

Create a new file in the "/plugins" directory named "vue-social-sharing.client.ts".

Insert the following content into the file:

import VueSocialSharing from "vue-social-sharing";

export default defineNuxtPlugin((nuxtApp) => {
  nuxtApp.vueApp.use(VueSocialSharing);
});

from vue-social-sharing.

AndreaKocsis avatar AndreaKocsis commented on June 9, 2024

Cannot read properties of undefined (reading 'Index')

I had this problem, too.
If i don't add "vue-social-sharing/nuxt" line to nuxt.config.ts, it works.
image

from vue-social-sharing.

AndreaKocsis avatar AndreaKocsis commented on June 9, 2024

If you see it:
A plugin must either be a function or an object with an "install" function

Change vue-social-sharing.ts to this:

import VueSocialSharing from 'vue-social-sharing/src/vue-social-sharing'

export default defineNuxtPlugin((nuxtApp) => {
  nuxtApp.vueApp.use(VueSocialSharing)
})

from vue-social-sharing.

TheMukhtarAhmed avatar TheMukhtarAhmed commented on June 9, 2024

Cannot read properties of undefined (reading 'Index')

I had this problem, too. If i don't add "vue-social-sharing/nuxt" line to nuxt.config.ts, it works. image

in nuxt.config.js add vuesocialsharing in build transpile like below

build: {
transpile: ["vuesocialsharing", ...],
...
}

and create plugin vuesocialsharing.client.js
just copy paste below code


import { defineNuxtPlugin } from "#app";
import VueSocialSharing from 'vue-social-sharing';

export default defineNuxtPlugin((nuxtApp) => {
nuxtApp.vueApp.use(VueSocialSharing);
});

from vue-social-sharing.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.