如何在開發模式下使功能可用,而在生產環境中隱藏它們
我工作的一些網站/應用程序有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>
}