让 Node 模块跑在浏览器里, Browserify
发布于 7 年前 作者 jiyinyiyong 12502 次浏览 最后一次编辑是 4 年前

很久一段时间了我一直在找浏览器段使用 Node 语法组织模块的方案 因为 SourceMap 技术渐渐成熟, 终于, 现在的工具已经可以用了 突然发现 Browserify 已经支持 JS 的 SourceMap, 甚至 CoffeeScript 直接写 模块的介绍可以看 Github 主页: https://github.com/substack/node-browserify?ref=commandbarr 还有 substack 自己的介绍, 不过我从 Vimeo 转的清晰度比较低: http://www.tudou.com/programs/view/pFEUq8F-970/ 我写了一篇比较索引了一下相关的资源: https://github.com/coffee-js/languages/issues/55

大概的用法是这样的, 首先安装 browserify 这个命令… 然后比如, 写一个 main.js 引用了 lib.js, 再引用了 lib-2.js 这样的文件 然后用 browserify -d main.js -o build.js 完成编译, -d 是用来产生 SourceMap 的 build.js 里大概实现了一遍模块加载器的功能, 所有代码都写到里边了的 SourceMap 在这里是用 DataURL 写在 JS 文件里的, 不用单独一个文件 命令里只要引用主入口就可以了, 命令会自动引入其他模块的 然后 Chrome 调试工具里打开 SourceMap 选项就可以用了

CoffeeScript 的用法, 要在本地 npm 安装 coffeeify 模块. 命令用 browserify -dt coffeeify main.coffee -o build.js 来完成编译 目前的版本行号还有些 Bug, 等待后续的更新来改正 另外 .coffee 里的 require("./lib.coffee") 是必须写后缀, Issue 里有人抱怨了

前端调试, 就应该跟 node-dev 一样, 一边 save 一边运行代码, 自动刷新网页 现在前端工具链因为 Node 逐渐开始完善了, 好现象, 希望再快一些 现在 Browserify 听说能直接引用 Component 项目的模块, 这不错 还有 Browserify 为一些 Node 官方模块改了一些浏览器版本, 这也挺有用 希望越来越好

3 回复

有个node-webkit工具可以让node在webket浏览器上跑以及调试,那个调试也不错

感觉也是, 不过为了代码在随便一台电脑上都能跑, 只能忍了

回到顶部