尝试浏览节点模块时未捕获TypeError

时间:2017-05-13 18:17:41

标签: javascript node.js browserify

我正在尝试找到一种方法,我可以在客户端的函数中使用此算法。该模块被称为RAKE,我正在尝试将其包装在一个函数中,以便我可以通过浏览它在客户端使用它。

以下是RAKE的github: https://github.com/waseem18/node-rake

try.js(编译)到bundle.js

var rake = require('node-rake')
// Will produce keywords
function rake_it(text){

    return rake.generate(text)
}

console.log(rake_it("LDA stands for Latent Dirichlet Allocation"))

理想情况下,当用户在表单内部输入并从文本生成关键字时,我想使用此功能。

所以我编译try.js做browserify try.js -o bundle.js

我将bundle.js放入index.html进行测试,但在控制台窗口中出现此错误。

bundle.js:27 Uncaught TypeError: fs.readFileSync is not a function
    at Rake.getStopWordsFromFile (bundle.js:27)
    at Rake.buildRegex (bundle.js:33)
    at new Rake (bundle.js:23)
    at Object.generate (bundle.js:9)
    at rake_it (bundle.js:145)
    at Object.3.fs (bundle.js:148)
    at s (bundle.js:1)
    at e (bundle.js:1)
    at bundle.js:1

仅供参考:该功能在节点命令提示符下有效。

尝试: - 用browserify-fs替换fs(同样的错误)

1 个答案:

答案 0 :(得分:0)

fs是访问文件系统的节点模块。它不适用于浏览器。