簡體   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