Node.js Express App – Rickshaw.Graph.RangeSlider TypeError:$(element).slider不是函数

这是一个类似的问题Rickshaw.Graph.RangeSlider TypeError:$(元素).slider不是一个函数

不同之处在于我在使用Express框架的node.js应用程序中使用Rickshaw。

我得到的错误:“TypeError:$(元素).slider不是一个函数”。 (2号线)

我在我的package.json文件夹中指定了jquery-ui(“^ 1.10.5”)作为依赖项。 进行了“npm install”并查看了node_modules文件夹中的jquery-ui文件夹。 我不知道为什么它在下面的上下文中丢失,然后导致错误。

$( function() { $(element).slider( { range: true, min: graph.dataDomain()[0], max: graph.dataDomain()[1], values: [ graph.dataDomain()[0], graph.dataDomain()[1] ], slide: function( event, ui ) { graph.window.xMin = ui.values[0]; graph.window.xMax = ui.values[1]; graph.update(); // if we're at an extreme, stick there if (graph.dataDomain()[0] == ui.values[0]) { graph.window.xMin = undefined; } if (graph.dataDomain()[1] == ui.values[1]) { graph.window.xMax = undefined; } } } ); 

});

更新:

也许我需要使用Grunt构build系统?

构buildjQuery UI

jQuery UI使用Grunt构build系统。

要构buildjQuery UI,您必须安装node.js,然后运行以下命令:

安装Grunt CLI npm install -g grunt-cli

克隆jQuery UI git回购git克隆git://github.com/jquery/jquery-ui.git cd jquery-ui

安装节点模块依赖关系npm install

运行concat任务来连接文件grunt concat

还有许多其他的任务可以通过Grunt来运行。 有关所有任务的列表:grunt –help

无论$或jquery-ui函数没有被定义,在rickshaw.js中,我都包含了相应的库

 window.$ = require('jquery'); 

要么

 var $ = require('jquery'); require('jquery-ui'); 

这是暂时的解决scheme,现在…