【问题标题】:esprima error while trying to use the Browserify module尝试使用 Browserify 模块时出现 esprima 错误
【发布时间】:2013-02-23 10:39:15
【问题描述】:

好的,所以我环顾四周,在网上找不到有关此错误的任何信息。

我正在尝试通过以下方式运行 Browserify:

浏览应用程序/main.coffee -w -o public/client_bundle.js

它正在产生错误消息:

/usr/local/lib/node_modules/browserify/node_modules/module-deps/node_modules/detective/node_modules/esprima/esprima.js:3859 throw e; ^ 错误:第 4 行:throwError (/usr/local/lib/node_modules/browserify/node_modules/module-deps/node_modules/detective/node_modules/esprima/esprima.js:1161:21) 处出现意外令牌非法 (/usr /local/lib/node_modules/browserify/node_modules/module-deps/node_modules/detective/node_modules/esprima/esprima.js:1089:9)在前瞻(/usr/local/lib/node_modules/browserify/node_modules/module-deps /node_modules/detective/node_modules/esprima/esprima.js:1118:18)匹配(/usr/local/lib/node_modules/browserify/node_modules/module-deps/node_modules/detective/node_modules/esprima/esprima.js:1239 :21) 在 parseLeftHandSideExpressionAllowCall (/usr/local/lib/node_modules/browserify/node_modules/module-deps/node_modules/detective/node_modules/esprima/esprima.js:1638:16) 在 parsePostfixExpression (/usr/local/lib/node_modules /browserify/node_modules/module-deps/node_modules/detective/node_modules/esprima/esprima.js:1695:20) 在 parseUnaryExpression (/usr/local/lib/node_modules/browserify/node_mod ules/module-deps/node_modules/detective/node_modules/esprima/esprima.js:1730:20) 在 parseMultiplicativeExpression (/usr/local/lib/node_modules/browserify/node_modules/module-deps/node_modules/detective/node_modules/esprima/ esprima.js:1781:20) 在 parseAdditiveExpression (/usr/local/lib/node_modules/browserify/node_modules/module-deps/node_modules/detective/node_modules/esprima/esprima.js:1798:20) 在 parseShiftExpression (/usr/ local/lib/node_modules/browserify/node_modules/module-deps/node_modules/detective/node_modules/esprima/esprima.js:1815:20)

我不知道发生了什么。我认为这可能与弄乱/不兼容的节点模块有关。我已经完全删除了 node/npm 和所有 node_modules 并重新安装它们。

【问题讨论】:

    标签: node.js coffeescript npm browserify


    【解决方案1】:

    要使用coffeescript 运行,您需要添加更多选项:

    $ browserify -c 'coffee -sc' main.coffee > bundle.js
    

    或者更好的是,使用 coffeeify 模块:

    $ npm install coffeeify
    $ browserify -t coffeeify main.coffee > bundle.js
    

    【讨论】:

    • 出现错误:browserify -t coffeeify main.coffee > bundle.js
    • 当我尝试:browserify -c 'coffee -sc' application/main.coffee > bundle.js 我得到一个错误:stream.js:81 throw er; // 管道中未处理的流错误。 ^ 错误:未找到模块:来自文件 /Users/EventMobi/Documents/Projects/Tile_titans_node/application/main.coffee 的“./utilities/util”虽然该文件在那里并且之前只使用普通的 browserify
    • 这个错误是来自 browserify 还是 coffe?如果不需要此模块,也许添加 -i ./utilities/util 会有所帮助(或路径的一些变体。
    • 好的,它现在可以工作了。事实证明,当运行browserify -c 'coffee -sc' 时,require 语句需要文件类型,所以require('./utilities/util') 应该是require('./utilities/util.coffee')。这很奇怪,因为以前我只运行没有咖啡标志的 browserify,它会知道将 .coffee 编译为 .js。
    • 我遇到了完全相同的问题,但我没有使用任何 CoffeeScript(除非我的相互依赖项是)。
    猜你喜欢
    • 1970-01-01
    • 2016-03-22
    • 2020-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-01-24
    • 2013-07-11
    相关资源
    最近更新 更多