【问题标题】:Using cytoscape-qtip with meteor npm将 cytoscape-qtip 与流星 npm 一起使用
【发布时间】:2016-08-02 18:25:20
【问题描述】:

我正在尝试通过 npm 让 cytoscape-qtip 包与流星一起使用。

我已经通过“meteor npm install --save”命令安装了 cytoscape、jquery、qtip2 和 cytoscape-qtip,我正在将它们导入并注册到我的模板中,如下所示:

import cytoscape from 'cytoscape'
import jquery from 'jquery'
import cyqtip from 'cytoscape-qtip';
import qtip from 'qtip2';
cyqtip(cytoscape, jquery);

当我尝试在 cytoscape 元素上使用 .qtip 命令时,我收到以下错误:

TypeError: qtip.$domEle.qtip is not a function

我已经尝试使用气氛包(cytoscape:cytoscape、maxkfranz:cytoscape 和 maxkfranz:cytoscape-qtip),但我最终得到了同样的错误。

如果我尝试导入与流星捆绑在一起的 jquery(从 'meteor/jquery' 导入 jquery),我的页面将根本无法加载,并且我收到错误“TypeError: $ is not a function”。

cytoscape-qtip 状态的文档

请注意,如果使用任何类型的 require(),jquery 必须指向注册了 .qtip() 的 jQuery 对象。

这可能是问题所在,qtip 没有在 jQuery 对象中注册?如果是这样,我该如何注册?

我可以看到this guy 有类似的问题,通过更改他的脚本的导入顺序来解决,但是由于我使用的是 npm,我不确定如何手动更改导入顺序。

任何帮助将不胜感激!

【问题讨论】:

  • 解决了!它在将 qtip2 降级到 2.2.0 后工作,并将 Meteors 包括 jquery 替换为 npm 中的一个:import cytoscape from 'cytoscape' import jQueryNpm from 'jquery' import cyqtip from 'cytoscape-qtip'; import qtip from 'qtip2'; export const jQuery = jQueryNpm; export const $ = jQueryNpm; cyqtip(cytoscape, jQuery);
  • 不过,我会推荐loopback:tooltip。本机包似乎工作得更好,在我尝试安装qtip2 的过程中,我遇到了很多问题,我可以通过使用流星包来解决相同的目的。很高兴它对你有用,不过

标签: meteor npm qtip2 cytoscape.js


【解决方案1】:

如果window 上有一个 jQuery 对象,那么 qTip 会自行注册:https://github.com/qTip2/qTip2/blob/v3.0.2/src/core/intro.js。您可能只需要手动设置 qTip 即可注册。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多