Requirejs with perfect-scrollbar jQuery插件

时间:2017-08-21 09:55:02

标签: javascript jquery requirejs

首先我要说的是,我最近才选择了RequireJS,而我仍然试图了解它是如何工作的。

我正在尝试使用perfect-scrollbar,特别是jQuery版本。

我的index.js

requirejs.config({
    shim: {
        'perfectScrollbar': {
            'deps': ["jquery"]
        }
    },
    paths: {
        'jquery': "lib/jquery-3.2.1.min",
        'perfectScrollbar': "lib/perfect-scrollbar.jquery.min"
    }
});

require(["jquery", "perfectScrollbar"], function () {
    $(document).ready(function () {
        $(".custom_scrollbar").perfectScrollBar();
    });
});

我在控制台中收到以下错误:

jquery-3.2.1.min.js:2 Uncaught TypeError: $(...).perfectScrollBar is not a function
    at HTMLDocument.<anonymous> (index.js:15)
    at j (jquery-3.2.1.min.js:2)
    at k (jquery-3.2.1.min.js:2)

编辑:切换到jQuery 2.2.1会产生以下(类似)错误:

index.js:15 Uncaught TypeError: $(...).perfectScrollBar is not a function
    at HTMLDocument.<anonymous> (index.js:15)
    at i (jquery-2.2.1.min.js:2)
    at Object.add [as done] (jquery-2.2.1.min.js:2)
    at n.fn.init.n.fn.ready (jquery-2.2.1.min.js:2)
    at index.js:14
    at Object.execCb (require.js:5)
    at b.check (require.js:5)
    at b.<anonymous> (require.js:5)
    at require.js:5
    at require.js:5

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

您使用资本&#34; B&#34;来呼叫$(...).perfectScrollBar()。插件as documented in the README的实际名称为$(...).perfectScrollbar(),小写&#34; b&#34;。