2016-07-29 51 views
1

我正在開發Redux/ReactJS應用程序,並且我有一個應用程序設置列表。靜態應用程序設置的位置

我想決定是否應該在商店中使用它們,或者如果我應該創建一個包含設置的文件並將其導入我需要的位置。

+0

歡迎來到堆棧溢出!我儘可能地猜測你的問題,然後編輯你的問題。但是,添加代碼和說明以便更多知道該主題的人員將看到它。如果需要識別特定問題,請編輯您遇到的特定錯誤消息。祝你好運! – manetsus

回答

0

這要看的「應用程序設置」的性質。

對於安全的東西

像API密鑰等使用環境變量。你可以使用類似dotenv的東西來模擬其他環境。

常量

像串和顏色,外部URL,我用一個常量與多個exports文件。然後,每個模塊中我輸入任何我需要的,就像這樣:

import { 
    ANIMATION_DURATION, 
    COLORS, 
    MODALS, 
    TEXT_PADDING, 
} from '../../constants.js'; 

對於特定環境下的東西(如開發,督促...)

例如API網址或日誌級別等使用一套配置文件。所以你可能有一個config-dev.jsconfig-prod.js,然後config.js返回正確的文件的內容基於process.env.NODE_ENV

0

應用程序設置應該只是一個文件中的常量。這樣,對於不同的配置,可以切換設置。

設置文件的一個例子是:

let apiUrl = 'http://prodUrl'; 

// __DEV__ defaults to true in simulator. 
if (__DEV__) { 
    apiUrl = 'http://devUrl'; 
} 

export const settings = { 
    apiUrl, 
    registerUrl: `${apiUrl}/api/register`, 
    educationUrl: `${apiUrl}/api/education`, 
};