cocoastorm / vue-paypal-checkout

A simple Vue.js wrapper component for paypal-checkout
MIT License
153 stars 66 forks source link

Vue Paypal Checkout Support SSR ? #53

Closed suryaadtmaja closed 6 years ago

suryaadtmaja commented 6 years ago

i'm going to use vue paypal checkout for my project in nuxt, but before I use it, i'm going ask, is it vue paypal checkout is support SSR ?

thank you

IlyaSemenov commented 6 years ago

No, don't bother with this one. It will crash immediately on import with:

{ ReferenceError: window is not defined
    at Object../node_modules/post-robot/src/conf/index.js (node_modules/paypal-checkout/dist/checkout.lib.js:2436:0)
    at __webpack_require__ (node_modules/paypal-checkout/dist/checkout.lib.js:13:0)
    at Object../node_modules/post-robot/src/lib/index.js (node_modules/paypal-checkout/dist/checkout.lib.js:3187:0)
    at __webpack_require__ (node_modules/paypal-checkout/dist/checkout.lib.js:13:0)
    at Object../node_modules/post-robot/src/index.js (node_modules/paypal-checkout/dist/checkout.lib.js:2524:0)
    at __webpack_require__ (node_modules/paypal-checkout/dist/checkout.lib.js:13:0)
    at Object../node_modules/xcomponent/src/index.js (node_modules/paypal-checkout/dist/checkout.lib.js:6828:0)
    at __webpack_require__ (node_modules/paypal-checkout/dist/checkout.lib.js:13:0)
    at Object../src/index.js (node_modules/paypal-checkout/dist/checkout.lib.js:10355:0)
    at __webpack_require__ (node_modules/paypal-checkout/dist/checkout.lib.js:13:0)
    at modules../node_modules/Base64/base64.js.object (node_modules/paypal-checkout/dist/checkout.lib.js:39:0)
    at pages/tokens.js:781:6
    at exports.modules.528.installedModules (node_modules/paypal-checkout/dist/checkout.lib.js:2:0)
    at Object.528 (node_modules/paypal-checkout/dist/checkout.lib.js:3:0)
    at __webpack_require__ (webpack:/webpack/bootstrap 2686f665539dc9063c07:25:0)
    at Object.527 (node_modules/paypal-checkout/index.js:5:0) statusCode: 500, name: 'ReferenceError' }
suryaadtmaja commented 6 years ago

No, i do use this package, and it's actually work. just add in nuxt-config

    { src: '~/plugins/paypal.js', ssr: false }
  ],
  ** Build configuration
  */
  build: {
    vendor: [
      'vue-paypal-checkout'
    ],

and in plugins imported as a component :

import Vue from 'vue'
import PayPal from 'vue-paypal-checkout'
Vue.component('paypal-checkout', PayPal')
cocoastorm commented 6 years ago

Thanks for the PR to use the component with Nuxt.js!

andriyfm commented 6 years ago

I follow your @suryaadtmaja but i have an issue

This dependency was not found:

vue-paypal-checkout in multi vue vue-router vue-meta vuex vue-simplemde vue-paypal-checkout, ./plugins/paypal.js**

To install it, you can run: npm install --save vue-paypal-checkout
suryaadtmaja commented 6 years ago

@andriyfm did you install vue-paypal-checkout on your project? the error looks like you're not installing it

andriyfm commented 6 years ago

I cancel to use this package, maybe later.

mogalmahesh commented 5 years ago

Thanks @filsuck. It worked

suryaadtmaja commented 5 years ago

Thanks @filsuck. It worked

You're welcome