簡體   English   中英

流星:如何將本地環境與生產分開?

[英]Meteor: How to separate local environment from production?

我有兩段代碼:一段只能在本地環境中運行,而另一段只能在生產環境中運行。 在流星中做到這一點的最佳方法是什么?

你可以檢查一下

(服務器端)

var isDevelopment = function() {
    var i = WebApp.clientProgram.manifest.length;
    while(i--) {
        if('sourceMap' in WebApp.clientProgram.manifest[i]) return true;
    }
    return false;
}

if(isDevelopment()) {
    console.log("Dev mode");
}else{
    console.log("Production");
}

這個想法是檢查JS Source Maps,它們僅在開發模式下可用。 這無需任何特殊配置即可與流星應用程序一起使用。

我更喜歡設置服務器可以讀取的環境變量。 例如:

$ METEOR_ENV="production" meteor

然后在服務器上:

if (process.env.METEOR_ENV === 'production') {
  // production code here
} else {
  // dev code here
}

如果只有兩個狀態,則可以假設!production = dev。

使用此軟件包 ,您將僅在開發中擁有Meteor.isdevelopment 那里也有其他軟件包,它們執行相同的操作但有所不同。 這是最簡單的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM