嘿,我正在尝试为我的应用程序分配一个表排序器。我想使用这个(https://github.com/tristen/tablesort),但是在使其工作时遇到了问题。我将其保存在package.json文件中,并在整个NPM中安装它,以后在var tablesort = require('tablesort');
之类的代码中要求它。主要问题在于它附带的模块。在github项目中,它们是这样要求的:<script src='tablesort.number.js'></script>
。如何将这种代码转换为节点/需要友好的代码,这些代码将加载所有这些模块并让我对表进行排序?我不知道如何使该表排序器与nodejs应用程序一起运行。
最佳答案
从you use Browserify开始,您应该没事。
TableSort库在其源代码中具有与CommonJS兼容的export。新增中
var TableSort = require("tablesort");
对源代码的引用应该足以将库包含在构建的包中,并为您提供对TableSort构造函数的引用。项目的README甚至has that example。
但是,对于捆绑的排序方法而言并非如此,因为他们希望找到对
TableSort
原型的全局引用,然后使用其扩展方法(例如, TableSort.date。您可以Browserify-shim使CommonJS不兼容的模块CommonJS兼容。但是,在快速实验中,如果没有切片和切块,我将无法使其正常工作。由于某种原因,当将文件包含在包的子文件夹中时,browserify-shim的文件解析失败。
通过将排序方法复制到我的项目文件夹中,我确实设法包括了排序方法。我做了Gist demo,其中包括一种匀场排序方法。克隆它,运行
npm install && npm run build
,然后在浏览器中打开index.html
。关于javascript - 如何在Node.js应用程序中需要其他模块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33873368/