在本教程中,我將向您展示如何使用 React 和紐約時報 API 建立新聞應用程式。這個專案是我了解更多有關 React、如何使用 API 以及如何使用 Vercel 部署 Web 應用程式的好方法。
《紐約時報新聞應用程式》是一個簡單的 Web 應用程序,可讓用戶查看《紐約時報》的最新新聞。該應用程式直接從《紐約時報》API 獲取數據,並將其顯示在乾淨且易於使用的介面中。
在我們開始編碼之前,請確保您的電腦上有以下內容:
1。複製儲存庫:
git clone https://github.com/tomasdevs/the-new-york-times-app.git cd the-new-york-times-app
2。安裝依賴項:
我們需要為應用程式的客戶端和伺服器部分安裝工具。
cd client npm install npm install react-transition-group cd ../server npm install
3。設定環境變數:
在伺服器資料夾中建立一個 .env 檔案並新增您的《紐約時報》API 金鑰:
NYT_API_KEY=your_api_key_here
在Articles.js元件中,我使用Fetch API來取得最新的新聞文章。其工作原理如下:
const response = await fetch( process.env.NODE_ENV === "production" ? `https://api.nytimes.com/svc/topstories/v2/home.json?api-key=${process.env.REACT_APP_NYT_API_KEY}` : `${process.env.REACT_APP_API_URL}/api/articles` );
當此程式碼確保應用程式運行時,它直接從紐約時報 API 取得資料。在開發過程中,它從本地伺服器獲取數據,這使得測試更容易。
為了處理分頁,我加入了簡單的邏輯,將文章清單分為頁面。我還使用 react-transition-group 在文章之間移動時添加平滑的動畫:
<TransitionGroup component="ul" className="articles-list"> {currentArticles.map((article, index) => ( <CSSTransition key={index} timeout={500} classNames="article"> <ArticleItem article={article} /> </CSSTransition> ))} </TransitionGroup>
最初,我在本地開發期間嘗試從紐約時報 API 獲取資料時遇到了 CORS 的一些問題。我透過設定一個充當代理的簡單後端伺服器來解決這個問題。對於即時版本,為了簡單起見,我直接從 API 取得資料。
我還了解了正確管理環境變數的重要性,尤其是在部署到 Vercel 等平台時。這對於保證 API 金鑰等敏感資料的安全非常重要。
這個計畫是一次很棒的學習經驗。它幫助我提升了 React、API 整合和 Web 部署的技能。我對應用程式的結果非常滿意,並且很高興將來能夠建立更複雜的專案。
如果您有任何反饋或建議,請隨時聯繫或發表評論。您也可以查看 GitHub 上的程式碼並自行嘗試。
在這裡嘗試現場演示!
感謝您的閱讀!
以上是使用 React 和紐約時報 API 建立新聞應用程式的詳細內容。更多資訊請關注PHP中文網其他相關文章!