繁体   English   中英

在Node.js中使用第三方JavaScript文件

[英]Using third-party JavaScript file in Node.js

我有一个JavaScript文件,不是为Node.js编写的。 它实际上是由我编写的,但如果您将其视为第三方库,则此问题可能更容易理解。

通常,Node.js模块仅将module.exports对象公开给外部代码。 这需要将文件与Node.js一起编写。

但是,该文件不是为Node.js编写的,但我想将其包含在Node.js模块中。 我无法编辑此文件,因为它将在以后使用,与Node.js无关。

我想我可以通过读取文件并在内容上调用eval来将其拉下来,但是有更好的方法吗?

TL; DR

如何将.js文件包含到Node.js模块中,而不重写它以使用像exports这样的Node.js特定代码?

PS我想在Node.js中使用它的原因是在它部署到别处之前进行一些测试。

这取决于代码在该文件上的写法。 如果文件包含类或单个对象,则可以执行以下操作:

(function(global) {

    function MyClass() {


    }

    MyClass.prototype = {
            ...
    };

    if( typeof module !== "undefined" && module.exports ) {
        module.exports = MyClass;
    }
    else if ( global ) {
        global.MyClass = MyClass;
    }

})(this);

如果需要,您可以将全局分配修改为更深的命名空间。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM