React Native 0.87 沒有 Mac 跑 iOS 時,最快的做法不是立刻更換整台電腦,而是採用「Windows 編碼、Mac 驗證」的雙軌流程。你可以在 Windows 完成 JavaScript 或 TypeScript 程式、介面與多數共用邏輯;但本地 iOS 模擬器、Xcode 建置,以及原生問題排查,仍需要 macOS 與 Xcode。React Native 官方環境文件已明確列出這項工具鏈限制。

適合閱讀這篇文章的人:

  • 只有 Windows 電腦,剛開始學 React Native 的學生。
  • 課程要求同時提交 Android 與 iOS 作業的編程新手。
  • 已完成介面開發,卻卡在 iOS 模擬器、原生依賴或簽名步驟的人。

最後更新於 2026 年 8 月 26 日;版本與工具要求核實自 React Native 0.87 發布說明、官方環境配置文件及 Apple 的 Xcode 系統要求。

動手前的工具邊界

React Native 0.87 可以在 Windows 開發 iOS 嗎?可以編寫大部分跨平台程式,但不能把 Windows 當成完整的 iOS 本地建置環境。這兩件事要分開理解:

  • 可以在 Windows 做的事:編寫 JavaScript、TypeScript、元件、畫面和多數商業邏輯;使用 Git 保存程式;執行 Android 測試。
  • 需要 Mac 的事:啟動 iOS Simulator、使用 Xcode 編譯 iOS 專案、檢查 CocoaPods 或其他原生依賴造成的錯誤。
  • 需要進一步帳號與簽名的事:把程式安裝到真實 iPhone,或製作可分發的安裝檔。Apple 對建置、執行與簽名有不同要求,可參考其 建置與執行 App 的官方說明。

因此,React Native 0.87 沒有 Mac 跑 iOS 並不代表你不能開始學習;真正的分界是「共用程式碼」與「iOS 原生驗證」。如果你只是在學元件與狀態管理,先留在 Windows 反而較省事。

Windows 編碼期的可保存成果

先建立能重複使用的專案基礎

在 Windows 階段,你的目標不是假裝已完成 iOS 測試,而是把可以跨平台共用的部分做好。依照課程指定方式建立專案,完成基本畫面、導覽、表單、資料呈現與錯誤狀態,再把程式推送到版本控制儲存庫。

你可以先記錄:

  • Node.js 版本與套件管理工具。
  • React Native 版本,以及 package.json 的依賴版本。
  • 課程要求的專案建立指令。
  • 目前已完成的畫面與尚未驗證的功能。
  • 每次修改的提交訊息。

「框架預覽」只能說明某段介面大致能顯示,不能證明 iOS 原生建置成功。尤其當你加入需要原生模組的套件時,Android 預覽正常,並不等於 iOS 專案也能編譯。

預覽工具與 Xcode 的差別

Expo 預覽能協助你快速看畫面,但不能取代所有 Xcode 建置工作。Expo 官方對 Expo Go 與 development build 的差異有明確說明:當專案需要自訂原生程式碼或原生依賴時,便不能只依賴一般預覽流程。Expo 的 development build FAQ可作為判斷依據。

這也是為什麼「看得到畫面」和「完成 iOS 驗證」是兩個結果。你可以把 Expo 預覽想成展示模型;Xcode 建置則像把真正的機械結構裝上去,兩者都能看到外觀,但檢查的範圍不同。

首次切換到 Mac 的準備

學 React Native 到哪一步必須使用 Mac?當你需要確認 iOS Simulator、處理 iOS 原生依賴,或執行 Xcode 的建置流程時,就應該切換。不要等到作業截止前才第一次登入,先在 Windows 把以下項目準備好:

  • 程式已提交到遠端儲存庫,且工作目錄沒有未保存修改。
  • 課程要求的 React Native 版本、Node.js 版本和套件版本已記錄。
  • 已確認 Mac 上的 Xcode 與 macOS 符合 Apple 的 Xcode 系統要求。
  • 已準備登入遠端 Mac 所需的帳號與權限。
  • 已確認專案需要的 iOS 平台元件、命令列工具及原生套件。
  • 若課程指定 Xcode 26.6,先以課程文件和遠端 Mac 可用環境為準,不要自行改成測試版工具。

React Native 0.87 已於 2026 年 8 月 11 日發布;發布說明提到 Strict TypeScript API 預設啟用,而 Swift Package Manager 的 iOS 支援仍屬實驗性路徑。官方發布說明也提醒了這個邊界。初學者若沒有課程或官方文件要求,不要為了嘗試新功能而改動原本的依賴安裝方式。

提醒: 第一次建置前,先保存 package.json、鎖定檔與 iOS 專案變更。若你直接在遠端 Mac 更新大量套件,之後很難判斷錯誤究竟來自版本、原生依賴,還是環境差異。

遠端 Mac 上的首次 iOS 啟動

遠端 Mac 能不能執行 React Native iOS 模擬器?可以,前提是該遠端環境提供可使用的 macOS、Xcode 與 iOS Simulator,而且你能透過 VNC、SSH 或網頁控制台操作。遠端連線只改變你操作電腦的方式,不會把 Windows 變成 iOS 建置主機。

以下順序適合第一次啟動:

取得程式碼

登入遠端 Mac 後,先從版本控制儲存庫取得程式碼,切換到與課程一致的分支。檢查 package.json 和鎖定檔是否存在,再確認目前目錄就是 React Native 專案根目錄。

安裝依賴

依照專案原本使用的套件管理工具安裝依賴,不要在這一步順便升級 React Native。若專案包含 iOS 原生依賴,按照 React Native 官方環境文件的要求完成命令列工具與平台元件準備。

啟動 Metro

Metro 是 React Native 的「即時送貨站」:它把你編寫的 JavaScript 或 TypeScript 程式整理後,送到正在執行的 App。先在終端機啟動 Metro,再進行 iOS 執行,出錯時保留終端機輸出,日後才能分辨是 JavaScript 還是原生建置問題。

開啟 Simulator

iOS Simulator 是在 Mac 螢幕上模擬 iPhone 的工具,不是真實 iPhone。依照 React Native 官方 iOS Simulator 執行指引選擇可用裝置,再執行專案的 iOS 啟動指令。第一次啟動可能需要等待原生專案完成編譯,先不要因為畫面暫時沒有出現就連續重試。

執行首次建置

成功開啟後,觀察三個位置:終端機的建置輸出、Metro 的程式錯誤,以及 Simulator 中的畫面。若專案停在原生套件、簽名或 iOS 專案設定,先保存完整錯誤訊息,再回頭核對版本與依賴,而不是直接刪除整個專案重來。

首次成功後的驗證標準

一次開啟畫面,不代表整條流程已經可靠。至少完成以下檢查:

  • 關閉後能否再次啟動同一個專案。
  • 修改一個簡單文字或樣式後,Simulator 是否能顯示更新。
  • 新增的畫面是否能正常導覽,且沒有只在 Android 存在的功能。
  • 建置失敗時,是否能保留終端機與 Xcode 的錯誤記錄。
  • 重新從儲存庫取得程式碼後,是否能按照同一流程還原環境。

你還要分清三種結果。Simulator 執行成功,只代表模擬器上的開發測試通過;真機除錯還涉及裝置連線與簽名;可分發安裝檔則涉及更完整的憑證與 provisioning profile。Apple 對 provisioning profile 的用途與管理方式有獨立說明,請參考官方 provisioning profile 文件,不要把分發流程誤當成第一次學習時的必要步驟。

第一週的雙軌保存清單

建議把日常工作固定成「Windows 編碼、提交程式、遠端 Mac 拉取、iOS 驗證、回到 Windows 繼續修改」。這樣既不用每次都在遠端環境寫全部程式,也不會到了交作業才發現 iOS 端完全沒有測過。

  • [ ] 在 Windows 完成一個小功能後,先本地檢查,再提交到版本控制。
  • [ ] 提交訊息寫清楚修改內容,例如畫面、導覽或套件變更。
  • [ ] 切換到遠端 Mac 前,確認沒有未提交的本地修改。
  • [ ] 在遠端 Mac 拉取最新程式碼,先確認依賴版本沒有被意外改動。
  • [ ] 啟動 Metro,再開啟 iOS Simulator,保存第一次建置輸出。
  • [ ] 修改原生套件、權限設定或 iOS 專案檔後,立即重新做一次 iOS 驗證。
  • [ ] 完成驗證後,把遇到的錯誤與處理方式寫進課程筆記。
  • [ ] 不把遠端 Mac 上的臨時修改當成唯一副本,重要程式仍以版本控制儲存庫為準。

如果遠端操作本身不熟悉,可以先查看 SSHMac 幫助中心了解連線與使用方式;若你需要確認服務使用限制,也應先閱讀服務條款。

新手方案判斷表

下表不是在比較哪台電腦更快,而是幫你判斷目前的學習階段應把工作放在哪裡。評分是針對「React Native 0.87 初學者完成 iOS 學習流程」的編輯判斷,不是硬體效能測試。

學習工作 Windows 本機 遠端 Mac 判斷
JavaScript、TypeScript 與共用介面 ★★★★★ ★★★ 留在 Windows
Android 開發與測試 ★★★★★ ★★★ 留在 Windows
iOS Simulator ★ ★★★★★ 切換到 Mac
Xcode 原生建置 ★ ★★★★★ 必須使用 Mac
原生依賴與 iOS 專案排錯 ★★ ★★★★★ 優先使用 Mac
長期保存與版本控制 ★★★★ ★★★★ 兩邊都要提交

目前方案與遠端 Mac 的取捨

只用 Windows 的缺點是無法完成本地 iOS Simulator、Xcode 建置與部分原生錯誤排查;只依賴 Expo 預覽,則可能把預覽結果誤認為 iOS 原生驗證;為了這門課直接購買 Mac,又會讓短期學習承擔較高的一次性成本,而且設備未必會在課程結束後持續使用。

如果你的目標只是完成課程中的 iOS 驗證、測試原生依賴,或在作業期限前跑通第一次建置,先使用 SSHMac 的遠端 Mac 通常更符合這種「需要時才使用」的情況。你可以先查看遠端 Mac 使用方案,再按照作業期限選擇合適的學習週期;若你需要長期、每天進行大量建置,或必須直接插接實體 iPhone、USB 裝置,購買自己的 Mac 仍可能更合適。

對多數剛入門的學生,最穩妥的路線是:Windows 負責學習與寫程式,遠端 Mac 負責 iOS Simulator、Xcode 和原生驗證。這樣你不必等到買得起 Mac 才開始,也不會把「能預覽」誤當成「已完成 iOS 建置」。