利用browserify Node JS文件到浏览器中

时间:2014-06-27 08:36:09

标签: javascript node.js browserify

我有一个NodeJS文件,我使用browserify模块浏览了该文件。我使用了以下命令

browserify testFile.js -o bundle.js

要在浏览器中使用此文件,我正在使用window对象。

假设在浏览文件后生成以下代码。

var Main = function () {
   this.foo = function () {
   },
   this.temp= function () {
   },
   this.bar= function () {
   }
}

使用我将其改为

window.Main = function () {
       this.foo = function () {
       },
       this.temp= function () {
       },
       this.bar= function () {
       }
    }

然后使用这些函数,我使用了以下代码:

var obj= new Main ();

然后我可以说obj.foo(); or obj.bar();

这一切都运行正常,但我想知道这是否是从浏览器文件中调用函数的正确方法。

请建议使用browserfied文件的正确方法。

1 个答案:

答案 0 :(得分:1)

当您将整个项目用于浏览器时,它是一个很棒的工具。将它用于单个文件几乎没有任何意义。它的全部意义在于避免全局变量,而不是设置window.Main你可以这样做:

module.exports = function () {
   this.foo = function () {
   },
   this.temp= function () {
   },
   this.bar= function () {
   }
}

然后在所有需要访问上述内容的文件中,执行:

var Main = require('./path/to/main.js');

Browserify会自动解析并内联所有需要调用的内容,因此您只需要在启动应用程序的单个文件上运行Browserify。