【问题标题】:Regular NPM package not functioning within Vue.js app常规 NPM 包在 Vue.js 应用程序中不起作用
【发布时间】:2020-02-16 10:58:18
【问题描述】:

我正在尝试在我的 Nuxt/Vue 应用程序中使用 NPM 包 scroll-ease-efficient,所以我在 plugins/ 文件夹中创建了一个名为 scroll-ease-efficient.client.js 的文件,我在 plugins 部分指定我的nuxt.config.js 文件。

这是文件的内容:

import Vue from 'vue'
import { scrollTo } from 'scroll-ease-efficient'
Vue.use(scrollTo)

然后在我的应用程序中我只是这样做:

const scrollEle = document.getElementById('element')
scrollTo(scrollEle, 500)

这应该可以,但它什么也没做,而且我也没有控制台错误。

怎么了?

【问题讨论】:

标签: vue.js nuxt.js


【解决方案1】:

感谢您的提问。但首先,让我澄清一下。并非所有 npm 包都打算使用 Vue/Nuxt 插件方法安装。这种方式的常规 npm 包名称通常包含单词 vue/nuxt,例如 VuetifyVuefire

而且scroll-ease-efficient 包不是 vue 也不是 nuxt 插件。所以为了使用这个包,你可以从那个包中添加全局 api 到 vue 或 nuxt 构造函数中。

import Vue from "vue";
import { scrollTo } from "scroll-ease-efficient";

Vue.prototype.$scrollTo = scrollTo;

现在可以通过this.$scrollTo()访问全局方法


编辑

请查看此演示链接:https://codesandbox.io/s/vue-scroll-ease-efficient-demo-8tqmj

【讨论】:

  • 谢谢,不过还是什么都没做
  • @drake035 嗨,我做了一个演示,请查看上面编辑部分的链接。
  • 我的问题与 Nuxt/Vue 应用程序有关,而不仅仅是普通的 Vue 应用程序。我知道它没有在标题中指定,但它在问题的第一行
  • 我认为这里的问题不在于 vue 或 nuxt 应用程序本身,而在于 scroll-ease-efficient 的文档。起初,我也很难弄清楚如何让它在我的演示链接上工作。然后我决定将他们的演示代码复制并粘贴到我的演示中。
  • 谢谢,但这并不能回答问题
猜你喜欢
  • 2019-01-26
  • 2017-12-12
  • 2019-02-14
  • 2021-03-05
  • 2018-02-11
  • 2021-02-02
  • 2020-11-15
  • 1970-01-01
  • 2018-12-05
相关资源
最近更新 更多