【问题标题】:Uncaught TypeError when trying to browserify a node module尝试浏览节点模块时未捕获的 TypeError
【发布时间】:2017-05-13 18:17:41
【问题描述】:

我正在尝试找到一种可以在客户端的函数中使用此算法的方法。该模块称为 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(同样的错误)

【问题讨论】:

    标签: javascript node.js browserify


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-08-23
      • 1970-01-01
      • 2021-03-04
      • 2015-07-30
      • 1970-01-01
      • 1970-01-01
      • 2017-06-19
      • 1970-01-01
      相关资源
      最近更新 更多