3

有人用 Nuxt 实现了 Paddle 吗?尝试在 Nuxt 应用页面(组件)中运行它:

<script src="https://cdn.paddle.com/paddle/paddle.js"></script>
<script type="text/javascript">
    Paddle.Setup({ vendor: 1234567 });
</script>

我尝试了三种方法都不成功。

  1. NPM 与 paddle-sdk

https://www.npmjs.com/package/paddle-sdk

没有数据依赖关系,不会建立在现代项目上。安装 npm i --save paddle-sdk 时,出现以下错误。其中一些依赖项不能通过 npm 获得:

 WARN  in ./node_modules/paddle-sdk/node_modules/keyv/src/index.js                                                                   friendly-errors 09:02:21

Critical dependency: the request of a dependency is an expression                                                                    friendly-errors 09:02:21
                                                                                                                                     friendly-errors 09:02:21

 ERROR  Failed to compile with 4 errors                                                                                              friendly-errors 09:02:21

These dependencies were not found:                                                                                                   friendly-errors 09:02:21
                                                                                                                                     friendly-errors 09:02:21
* dns in ./node_modules/cacheable-lookup/index.js                                                                                    friendly-errors 09:02:21
* fs in ./node_modules/paddle-sdk/node_modules/got/dist/source/request-as-event-emitter.js, ./node_modules/paddle-sdk/node_modules/got/dist/source/utils/get-body-size.js
* net in ./node_modules/paddle-sdk/node_modules/got/dist/source/utils/timed-out.js                                                   friendly-errors 09:02:21
                                                                                                                                     friendly-errors 09:02:21
To install them, you can run: npm install --save dns fs net                                                                          friendly-errors 09:02:21
  1. Nuxt 插件

https://nuxtjs.org/docs/2.x/directory-structure/plugins/

无法使用远程(第三方)脚本创建 nuxt 插件,只能在插件目录中本地创建。他们网站上的 Paddle 问道:“请不要自行托管 Paddle.js,这将阻止您接收错误修复和新功能。”

  1. 头部方法

我可以在页面内的 head 方法中实现脚本,但我无法从 nuxt 页面内的脚本中执行方法。换句话说,这有效:

<script src="https://cdn.paddle.com/paddle/paddle.js"></script>

但这不会:

<script type="text/javascript">
    Paddle.Setup({ vendor: 1234567 });
</script>

这是我的 .vue 文件的头部分:

 head: {
    script: [
      {
        hid: 'Paddle',
        src: 'https://cdn.paddle.com/paddle/paddle.js',
        async: true,
        defer: false
      }
    ]
  },

有人有任何运气或替代解决方案吗?

4

1 回答 1

3

我模拟您的问题,我将脚本导入nuxt.config.js

head: {
    script: [{
        src: 'https://cdn.paddle.com/paddle/paddle.js',
    }]
}

并在我的页面中使用它:

mounted() {
    Paddle.Setup({ vendor: 1234567 });
}

当然,它会输出You must specify a valid Paddle Vendor ID.

于 2021-04-23T17:26:02.257 回答