node.js - Browserify在尝试捆绑许多js文件时找不到模块

标签 node.js ssh browserify

这是我做 Node 的第一天,尝试捆绑一些 js 文件时遇到了一些问题。

MyFolder
|-- app (folder)   
|  |-- Collections (contains: movies.js)   
|  |-- Models (contains: movie.js)  
|  |-- node_modules  
|-- main.js  
|-- node_modules (folder)    
|-- static (folder)  

这是我要压缩成static/bundle.js的js文件的内容。

 // app/models/movie.js  
 var Backbone = require("backbone");
 var Movie = Backbone.Model.extend({
   defaults: {
     title: "default",
     year: 0,
     description: "empty",
     selected: false
   }
 });
 module.exports = Movie;

 // app/collections/movies.js  
 var Backbone = require("backbone");
 var Movie = require('models/movie');
 var Movies = Backbone.Collection.extend({
      model: Movie
 });
 module.exports = Movies;

当我运行 browserify -r ./app/main:app > static/bundle.js 时,bundle.js 文件是使用 app/main.js 中的脚本创建的。它按预期工作。

但是当我运行 browserify -r ./app/collections/movies.js:movies\-r ./app/models/movie.js:movie > static/bundle.js 时,它创建一个空的 bundle.js 并显示:

Error: Cannot find module '/Users/MyFolder/app/models/movie.js:movie' from '/Users/MyFolder'  

我的文件夹 app/node_modulesln -sf ../models .ln -sf ../collections .

问题 1:任何提示我做错了什么?
问题2:如果static/bundle.js存在。再次运行 browserify 是否会覆盖文件?在我的本地测试中它不会覆盖,所以我应该每次都删除这个文件进行更新吗?

最佳答案

可能会考虑将 ./ 添加到您的路径中:

var Movie = require('./models/movie');

见:How to use browserify to bundle a backbone app?

关于node.js - Browserify在尝试捆绑许多js文件时找不到模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27652556/

相关文章:

ssh - 我可以通过 Chrome 操作系统连接到 Google Cloud VM 吗?

node.js - Gulp 失败并显示消息 : object expected

node.js - Firebase 单元测试 : The default Firebase app does not exist

Python Twisted Conch - 如何通过多个连接停止 react 器?

python - 使用 Paramiko 自动执行 ssh-keygen

javascript - 如何为已经模块化的库构建独立的外部依赖js文件?

javascript - 如何浏览器化模块?

javascript - Grunt browserify 在需要 react-bootstrap-typeahead 时失败

javascript - Javascript 中的元组列表

node.js - Node 模块 googleapis 导致问题