如何在開發模式下使功能可用,而在生產環境中隱藏它們

我工作的一些網站/應用程序有2種模式,一種是開發模式,另一種是生產模式,即上線版本。

使用Next.js,我發現通過檢查process.env.NODE_ENV的值來實現這一點非常容易,當使用npm run dev運行時,它的值設置為'development'

因此,我可能有一個不應該對外公開的API路由,我在其頂部添加以下代碼:

if (process.env.NODE\_ENV != 'development') return null

這樣就不會在生產環境中運行。

同樣,頁面組件也是如此,如果在生產環境中訪問,將渲染一個空白頁面。

我使用同樣的技術,在僅在開發模式下的組件中添加JSX代碼:

{
 process.env.NODE\_ENV == 'development' && <div>hi</div>
}