javascript - 通过 browserify 为 node.js 捆绑文件不起作用

标签 javascript node.js coffeescript browserify

我正在使用 browserify v13.0.0

我有一个 a.js,它只有一个 module.exports = {a: 1}

然后我这样运行 browserify: browserify --node --debug a.js > bundle.js

Node REPL中,

> require ('./bundle.js')
{}
>

为什么是 {}?它不应该给我 {a: 1} 吗?

虽然我已将问题简化为最简单的情况,但这种行为阻止我将涉及多个 coffeescript 文件的项目捆绑到 Node 和浏览器的单个文件中。

我也试过--bare, --no-builtins, --no-bf

同样的事情也适用于standalone 选项。所以如果我这样做 browserify --node --standalone abc --debug a.js > bundle.js

> require ('./bundle.js')
{a: 1}
>

Standalone 可以是 abc 或其他任何东西!它只是工作

最佳答案

我看到了同样的事情,它似乎与 UMD header 的生成方式有关。 standalone 参数在根对象上设置该名称的属性(在 Node 中加载模块时似乎是 module.exports )但我不确定。我将查看用于生成 UMD header 的 browserify 源,然后我将了解更多信息。现在,我会说坚持使用“独立”选项

关于javascript - 通过 browserify 为 node.js 捆绑文件不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35395738/

相关文章:

javascript - Mapbox GL JS - "Flat"标记

javascript - 我需要在 DOM 事件回调中使用闭包吗?

api - 在 Node.js 中使用 Pastebin API

node.js - 在 Linux Ubuntu 的 Windows 子系统中链接 Windows 命令

coffeescript - 如何在没有 for 循环的情况下从对象中获取键和值?

javascript - 如何提高JS函数式代码的性能

javascript - 如何评估 <div> 是否使用自定义变量进行动画处理?

node.js - 如何使用现有的 Mongo 连接配置 Mongoose

node.js - 在 npm install 上编译 CoffeeScript

javascript - D3.js过滤现有的html表