精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

使用React Native可以開發Window桌面應用了!

開發 前端
我將解釋如何使用 react-native-windows 項目開發Windows桌面應用程序。我們還將介紹React Native語法如何通過框架的內部模塊轉變為本地桌面應用程序。

 眾所周知,React 是一個由 Facebook 編寫的免費開源 JavaScript 庫,用于創建高度動態的 Web UI。Facebook 后來創建了 React Native 來開發跨平臺原生移動應用程序,使用 React 作為開發人員的核心接口,這使他們能夠使用基于 React 語法的單一代碼庫為 Android 和 iOS 構建原生移動應用程序。

React通常將其組件變化渲染為DOM(文檔對象模型),但它也可以將組件渲染為HTML,以滿足服務器端渲染(SSR)的要求。對于React Native,曾經有Proton Native,它生成了跨平臺的桌面應用程序,并讓你用Qt和wxWidgets UI工具包渲染本地UI元素,但它已不再積極維護。

雖然它仍然有一個活躍的分支,但在本文中,我們將介紹一個更穩定、積極維護和流行的項目: react-native-windows [1] 。這是 Microsoft 對 Windows 和 macOS 后端的 React Native 的擴展,它使得相同的基于 React Native 的前端將在具有特定平臺 UI 元素的 Windows 和 macOS 上原生渲染。

我將解釋如何使用 react-native-windows 項目開發Windows桌面應用程序。我們還將介紹React Native語法如何通過框架的內部模塊轉變為本地桌面應用程序。

設置開發環境

確保你的電腦安裝了以下Windows版本:

  • Windows 10.0.16299.0(又名 1709、Redstone 3 或 Fall Creators Update)或更高版本

如果您的計算機通過了上述要求,您可以在一個提升的(具有管理員權限的)PowerShell窗口中運行以下命令來安裝所需的依賴項。

  1. Set-ExecutionPolicy Unrestricted -Scope Process -Force; iex (New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/microsoft/react-native-windows/master/vnext/Scripts/rnw-dependencies.ps1'

上述命令將打開開發者模式并安裝 Visual Studio、Chocolatey 包管理器和 Node.js LTS 版本。此外,如果您的計算機具有 8GB 或更高的物理內存,那就太好了,因為 Windows 構建過程通常需要高于平均水平的物理內存才能運行。

上述腳本文件建議使用 16GB 的物理內存。如果上述腳本的第二次執行給出如下輸出,您可以繼續本教程。

創建 React Native Windows 應用程序

首先,使用以下命令創建一個新的 React Native 項目。此命令將自動生成一個基本的 React Native 應用程序。

  1. npx react-native init rnApp --template react-native@^0.64.0 

官方 React Native 包僅支持 Android 和 iOS 后端,因此您需要運行以下命令來啟用 Windows 后端。

  1. npx react-native run-windows 

此外,您可以添加 --useHermes 選項以使用 Hermes JavaScript 引擎而不是默認的 Chakra。

第一個構建過程可能需要很長時間才能完成,因為它會編譯許多 C++ 源文件。如果構建過程因錯誤而停止,您可以使用 --logging 選項運行相同的命令來查找這些錯誤。

對于在構建過程中可能出現的常見錯誤,您可能還需要注意以下解決方案:

  • 如果構建過程需要很多時間,或者存在與 Chakra 相關的編譯錯誤,請使用 --useHermes 選項
  • 如果構建過程引發關于缺少 Windows 10 SDK 的錯誤,請從 Visual Studio 安裝程序安裝它

  • 如果構建過程失敗并出現證書錯誤,請按照以下步驟使用Visual Studio為自動 生成的UWP項目創建新的證書 [2]

  • 有些模塊對有空格的路徑有問題。請確保你的項目路徑不包含任何空格。

一旦構建過程完成,您將看到React Native應用的UWP版本,如下所示。

 

 

 

 

熱重載功能已經啟用。另外, run-windows 命令會在Chrome上打開React Native調試器。你可以使用Chrome DevTools來為你的應用程序的JavaScript源文件設置斷點。

現在,讓我們了解幕后發生的事情。

在 React Native Windows 中

React Native 核心有幾個基本的預定義 React 組件,如 View、Text、Image、TextInput 和 ScrollView。官方的 React Native 運行時可以為 Android 和 iOS 操作系統渲染真正的原生 UI 構建塊。React Native 團隊最初使原生渲染模塊完全可擴展。因此,開發者社區也能夠將其擴展到其他平臺。

react-native-windows 項目添加了 Windows 應用程序目標支持。它可以從典型的 React Native 項目生成具有真正原生 UWP GUI 的 Windows 應用程序。UWP 應用程序適用于所有流行的 Windows 平臺,例如 Windows 10、Windows 10 Mobile、Xbox One 系統軟件和 Windows Mixed Reality。

然而,應用程序的JavaScript部分運行在一個類似于原始React Native項目的JavaScript引擎上。 react-native-windows 項目最初使用的是Chakra JavaScript引擎,后來他們集成了Facebook的Hermes JavaScript引擎來提高性能。

使用 react-native-windows 開發一個簡單的應用程序

我們將制作一個簡單的UWP應用程序,當你提交你的名字和姓氏時,它將顯示問候信息。將以下代碼添加到 App.js 文件中。

  1. import React from 'react'
  2. import type {Node} from 'react'
  3. import { 
  4.   SafeAreaView, 
  5.   ScrollView, 
  6.   StyleSheet, 
  7.   Text, 
  8.   TextInput, 
  9.   Button, 
  10.   useColorScheme, 
  11.   View, 
  12.   Alert, 
  13. } from 'react-native'
  14. const App: () => Node = () => { 
  15.   const isDarkMode = useColorScheme() === 'dark'
  16.   const [firstName, setFirstName] = React.useState(''); 
  17.   const [lastName, setLastName] = React.useState(''); 
  18.  
  19.   const styles = StyleSheet.create({ 
  20.     dark: { 
  21.       color: '#fff'
  22.       backgroundColor: '#000'
  23.     }, 
  24.     light: { 
  25.       color: '#000'
  26.       backgroundColor: '#fff'
  27.     }, 
  28.     formItem: { 
  29.       marginBottom: 6
  30.     } 
  31.   }); 
  32.  
  33.   const backgroundStyle = { 
  34.     backgroundColor: isDarkMode ? styles.dark : styles.light, 
  35.   }; 
  36.  
  37.   const showFullName = () => { 
  38.     Alert.alert(`Hello ${firstName} ${lastName}`); 
  39.   }; 
  40. return ( 
  41.     <SafeAreaView style={backgroundStyle}> 
  42.       <ScrollView 
  43.         contentInsetAdjustmentBehavior="automatic" 
  44.         style={backgroundStyle}> 
  45.         <View style={{padding: 12}}> 
  46.           <Text style={backgroundStyle}>First name</Text> 
  47.           <TextInput  
  48.             style={styles.formItem}  
  49.             value={firstName}  
  50.             onChangeText={setFirstName} 
  51.           /> 
  52.           <Text style={backgroundStyle}>Last name</Text> 
  53.           <TextInput  
  54.             style={styles.formItem}  
  55.             value={lastName}  
  56.             onChangeText={setLastName} 
  57.           /> 
  58.           <Button  
  59.             style={styles.formItem} 
  60.             title='OK'  
  61.             onPress={showFullName} 
  62.             disabled={!firstName || !lastName}> 
  63.           </Button> 
  64.         </View> 
  65.       </ScrollView> 
  66.     </SafeAreaView> 
  67.   ); 
  68. }; 
  69. export default App; 

現在,通過React Native Debugger重新加載當前的應用程序。你會看到一個像下面這樣的應用程序,根據你的主題設置進行風格化。

 

 

 

 

當您填寫完文本輸入后單擊 OK 按鈕時,您將看到一個帶有問候語的消息框,如下所示。

 

 

 

 

在這個示例應用程序中,我們使用了幾個React Native核心組件和核心api,以及React的useState Hook來獲取當前用戶輸入。正如你所看到的,我們最終從React native組件中獲得了原生UWP UI元素。

react-native-windows 擴展也支持復雜的布局實現,因為它支持 Yoga [3] 友好的語法。

React Native 開發者社區也制作了各種出色的庫,并且一些庫也支持 react-native-windows 。換句話說,一些流行的 React Native 庫將適用于 Android、iOS 和 Windows 應用程序。

通過使用Visual Studio打開UWP應用程序源代碼,可以發布應用程序。

總結

react-native-windows 項目是在官方React Native項目的早期開發階段同時開始的。微軟最近也開始了 react-native-macos [4] 的工作,為macOS后端擴展React Native。

react-native-windows 項目確實從基于 JavaScript 的代碼庫中呈現特定于平臺的 UI 元素。因此,如果您正在尋找一種使用 React Native 構建高質量 Windows 桌面應用程序的方法,那么它是最好的解決方案。

 

責任編輯:張燕妮 來源: 前端全棧開發者
相關推薦

2021-05-10 08:34:22

SpringNative Graalvm

2016-08-12 13:55:06

2017-09-11 14:35:34

編輯器開發環境React

2015-03-30 12:13:23

React NativiOS

2021-07-26 08:00:00

開發工具Flutter

2017-03-21 21:37:06

組件UI測試架構

2016-07-29 13:47:05

RethinkDBWeb

2023-02-09 07:15:52

開發FlutterReact

2016-06-06 17:26:22

平臺開發

2016-01-13 09:37:00

IDC混合開發react nativ

2019-12-09 14:50:44

LinuxWindow Make桌面

2020-12-02 11:06:25

Windows 10Android

2019-04-08 18:15:38

加密Tutanota應用

2016-08-31 17:03:20

JavascriptReact NativWeb

2016-10-13 19:01:59

React NativUbuntu

2018-01-12 14:57:06

React Nativ開發錯誤

2021-08-13 07:56:11

App移動應用

2019-08-29 09:00:55

開發Flutter框架

2019-10-29 09:48:20

ElectronGithub開源庫
點贊
收藏

51CTO技術棧公眾號

国产精品第6页| 日本丰满少妇裸体自慰| 亚洲精品一线| 99国产精品视频免费观看| 日韩免费在线观看视频| 国产美女高潮视频| 精品精品精品| 欧美丰满美乳xxx高潮www| 无码人妻少妇伦在线电影| 国产一二在线观看| 国产成人精品免费网站| 国产999精品久久久| 日本精品人妻无码77777| 天海翼亚洲一区二区三区| 欧美日本国产一区| 阿v天堂2017| 国产福利在线播放麻豆| 久久亚洲综合av| 国产传媒欧美日韩| 中文字幕一区二区人妻痴汉电车| 亚洲国产裸拍裸体视频在线观看乱了中文| 宅男66日本亚洲欧美视频| 污污内射在线观看一区二区少妇| 亚洲一区二区av| 一本大道av一区二区在线播放| 女人床在线观看| 3p视频在线观看| 久久嫩草精品久久久精品| 成人资源视频网站免费| 在线视频1卡二卡三卡| 翔田千里一区二区| 国内精品久久久久| 欧美日韩偷拍视频| 国产精品久久久久无码av| 亚洲码在线观看| 成人区人妻精品一区二 | 午夜精品久久久久久久久久久久久 | 日韩在线播放视频| 一级黄色片大全| 欧美理论电影在线精品| 精品精品国产高清a毛片牛牛| 午夜视频在线网站| jizz亚洲女人高潮大叫| 日本韩国欧美一区| 北条麻妃在线一区| 亚洲黄色免费av| 懂色av中文一区二区三区天美 | 久久综合影音| 日本成人激情视频| 日韩视频在线观看一区| 野花国产精品入口| 性色av一区二区咪爱| 国产一级黄色av| 狠久久av成人天堂| 国模视频一区二区三区| 在线观看精品国产| 一区二区久久| 欧洲中文字幕国产精品| 日韩精品一区不卡| 日本午夜精品视频在线观看| 国产精品99蜜臀久久不卡二区| 欧产日产国产69| 日韩精品一区第一页| 国产精品久久久久久久app| 中文字幕 国产精品| 日本欧美大码aⅴ在线播放| 国产精品美女网站| 国产老女人乱淫免费| 国产毛片一区二区| 国产日本一区二区三区| 欧美挠脚心网站| 国产免费成人在线视频| 伊人久久大香线蕉午夜av| 大地资源网3页在线观看| 一区二区三区视频在线看| 免费超爽大片黄| 二区三区不卡| 欧美日韩国产大片| 中国男女全黄大片| 婷婷亚洲成人| 色香阁99久久精品久久久| 日本一级二级视频| av不卡免费看| 91久久精品美女| 秋霞网一区二区| 国产校园另类小说区| 色乱码一区二区三区熟女| 岛国在线视频免费看| 一区二区三区亚洲视频| 国产99久久久国产精品成人免费| 亚洲美女激情视频| 欧美h片在线观看| 女人香蕉久久**毛片精品| 亚洲欧洲日产国产网站| 国产成人av免费在线观看| 伊人久久亚洲影院| 国产精品久久久久影院日本| 精品人妻伦一区二区三区久久| 99在线视频精品| 亚洲综合五月天| 蜜桃视频在线观看播放| 欧美久久久久久蜜桃| 久久久久亚洲AV成人无码国产| 色喇叭免费久久综合| 欧美极品少妇xxxxx| 国产天堂第一区| av高清久久久| 欧洲精品视频在线| 精品无人乱码一区二区三区| 亚洲第一福利视频| 成人一级黄色大片| 老牛国产精品一区的观看方式 | 在线精品国产亚洲| 少妇精69xxtheporn| 成人精品免费在线观看| 国产精品亚洲а∨天堂免在线| 免费观看成人高| 免费在线观看av电影| 欧美日韩免费在线视频| 中文字幕在线免费看线人| 一区二区电影| 国产在线视频2019最新视频| 91theporn国产在线观看| 久久久久久亚洲综合影院红桃| 天堂а√在线中文在线| 日本在线一区二区| 国产亚洲一级高清| 日日摸天天添天天添破| www.性欧美| 男人添女荫道口图片| 日韩精品亚洲专区在线观看| 久久精品视频在线| 国产剧情在线视频| 91亚洲永久精品| 国产特级淫片高清视频| 国产一区二区三区亚洲| 欧美激情精品在线| 精品国产999久久久免费| 亚洲人精品午夜| 欧美日韩中文不卡| 99精品全国免费观看视频软件| 国产精品69精品一区二区三区| 九色网友自拍视频手机在线| 黑人精品xxx一区| 亚洲综合自拍网| 日韩天天综合| 欧美国产综合视频| 亚洲精品成人图区| 亚洲色图五月天| 青青国产在线视频| 国产精品看片你懂得| 天天操天天爽天天射| 日韩专区精品| 成人免费看吃奶视频网站| 成人区精品一区二区不卡| 日韩欧美一级精品久久| 久久久久久久久久久久久久免费看 | 波多野结衣办公室33分钟| 欧美一级视频| 日本三级中国三级99人妇网站| 性欧美hd调教| 中文字幕精品网| 国产特黄一级片| 亚洲综合图片区| 亚洲 欧美 日韩在线| 亚洲免费在线| 手机在线观看国产精品| 日韩毛片免费看| 欧美成人黑人xx视频免费观看| 精品人妻一区二区三区换脸明星 | 动漫av网站免费观看| 自拍偷拍欧美一区| 国产精品中文字幕在线| 超碰在线观看免费| 亚洲激情视频在线播放| 波多野结衣二区三区| 亚洲色图在线看| 欧美大香线蕉线伊人久久国产精品| 四虎成人永久免费视频| 久久久久久久久久美女| 中日韩av在线播放| 一区免费在线| 国产一区二区三区四区五区在线 | 久久综合九色99| 国产精品4hu.www| 欧美大学生性色视频| 日本一区视频| 在线成人高清不卡| 久久久久久久久久久久久久av| 国产精品无码一区二区桃花视频| 成人av在线资源网站| 老熟妇仑乱视频一区二区| 国产精品毛片久久| 国产日韩欧美一区二区| 88xx成人网| 久久久亚洲精选| 思思99re6国产在线播放| 亚洲精品在线免费观看视频| 乱子伦一区二区三区| 一级日本不卡的影视| 中文字幕被公侵犯的漂亮人妻| 国产乱子轮精品视频| 欧洲黄色一级视频| 欧美成人一品| 亚洲精品在线免费看| 狼人天天伊人久久| 成人写真视频福利网| 中文字幕影音在线| 欧美国产乱视频| 91在线网址| 国产丝袜一区二区三区免费视频| 国产suv一区二区| 中文字幕色av一区二区三区| 欧美图片一区二区| 成人精品高清在线| 欧美视频国产视频| 日本在线观看不卡视频| 免费在线激情视频| 国产在线日韩| 国产成人免费高清视频| blacked蜜桃精品一区| 精品不卡在线| 国产色噜噜噜91在线精品| 91视频国产精品| 久久er热在这里只有精品66| 日本精品久久久久影院| 白浆在线视频| 久久人人97超碰精品888| 丝袜在线观看| 日韩欧美综合| 国产精品99久久久久久www | 一区二区高清在线| 青青操在线视频观看| 欧美极品xxx| av中文字幕免费观看| 91日韩一区二区三区| 麻豆精品国产传媒av| 粉嫩一区二区三区在线看| 美女被艹视频网站| 国产一区二区福利| 91热视频在线观看| 国产精品一级在线| 日韩欧美中文视频| 国产精品中文字幕一区二区三区| 午夜国产福利在线观看| 麻豆精品视频在线观看免费| 国产精品v日韩精品v在线观看| 久久国产人妖系列| 亚洲a级黄色片| 精彩视频一区二区三区| 潘金莲激情呻吟欲求不满视频| 久久爱www久久做| 亚洲成人天堂网| 韩国av一区二区三区四区| 在线a免费观看| 国产成人精品免费网站| 免费无码一区二区三区| 久久色在线视频| 变态另类ts人妖一区二区| 国产精品三级电影| 国产成人av免费在线观看| 亚洲一区二区欧美日韩 | 欧美日韩精品一区二区| 国产精品久久久国产盗摄| 欧美一二三区精品| 亚洲精品一区二区三区四区| 亚洲黄色av女优在线观看 | 超碰91人人草人人干| 丝袜中文在线| 日本午夜在线亚洲.国产| 黄色日韩网站| 国产成人成网站在线播放青青| 先锋影音国产精品| 亚洲在线色站| 亚洲国产清纯| 亚洲黄色a v| 国产成人一区在线| 中日韩精品一区二区三区| 国产精品九色蝌蚪自拍| 国产真实的和子乱拍在线观看| 欧美性色xo影院| 国产又黄又粗又硬| 亚洲精品wwwww| av午夜在线| 欧美精品久久久久久久免费观看| 日韩影片中文字幕| 亚洲aaaaaa| 亚洲人和日本人hd| 免费看黄色a级片| 久久精品观看| 日本黄色三级网站| 久久精品免费在线观看| 四虎免费在线视频| 日本黄色一区二区| 免费观看毛片网站| 色婷婷综合成人av| 夜鲁夜鲁夜鲁视频在线播放| 2019国产精品视频| 精品国产一级毛片| 日韩小视频在线播放| 久久99精品一区二区三区三区| 日本xxxx裸体xxxx| 一区二区在线观看免费| 真实的国产乱xxxx在线91| 亚洲白虎美女被爆操| 久久综合之合合综合久久| 日韩av免费在线| 露出调教综合另类| www.99riav| 韩国成人在线视频| 91精品国自产在线| 狠狠久久亚洲欧美专区| 精品乱子伦一区二区| www.日韩不卡电影av| 亚洲www.| 欧美成人在线免费观看| 很黄很黄激情成人| 日本一区二区三区在线免费观看| 国产精品欧美久久久久无广告 | 性欧美freesex顶级少妇| 亚洲一区二区免费| 99久久激情| 一区二区三区入口| 久久久久综合网| 日本中文在线播放| 亚洲国产99精品国自产| 最新日本在线观看| 成人字幕网zmw| 99久久99热这里只有精品| 鲁一鲁一鲁一鲁一av| 久久久不卡网国产精品二区| 久久免费激情视频| 亚洲精品福利在线| 黄色在线观看视频网站| 91视频-88av| 一本精品一区二区三区| 一区二区久久精品| 亚洲日本护士毛茸茸| 一区二区三区精| y97精品国产97久久久久久| 丁香婷婷久久| 一区二区三区的久久的视频| 美女国产一区二区| 性色国产成人久久久精品| 欧美在线999| 999国产在线视频| 国产欧美一区二区三区四区| 欧美电影三区| 五月六月丁香婷婷| 一区二区三区四区中文字幕| 性生活黄色大片| 国产+人+亚洲| 香蕉久久精品日日躁夜夜躁| 国产精品无码一本二本三本色| 国产亚洲精品免费| 一区二区三区在线免费观看视频| 视频在线观看99| 国产精品亚洲四区在线观看| 国产精品久久成人免费观看| 国产高清久久久| 中文字幕在线字幕中文| 亚洲欧美三级伦理| 性欧美videohd高精| 久久免费看毛片| 国产99久久久久| 中文字字幕在线中文| 中文字幕日韩欧美在线视频| www.久久久.com| 秋霞无码一区二区| 国产午夜精品一区二区三区四区| 亚洲一级av毛片| 九九久久综合网站| 欧美日韩一区二区三区四区不卡| 已婚少妇美妙人妻系列| 中文字幕在线不卡视频| 高清国产mv在线观看| 国产成人亚洲综合91| 亚洲一区二区日韩| v天堂中文在线| 欧美日韩国产综合视频在线观看| 97影院秋霞午夜在线观看| 久久成人资源| 国产在线精品视频| 自拍偷拍欧美亚洲| 三级精品视频久久久久| 大型av综合网站| 国产 porn| 亚洲午夜三级在线| 国产美女性感在线观看懂色av | 26uuu另类亚洲欧美日本老年| 国产亚洲欧美日韩在线观看一区二区 | 久久久久久久久久久亚洲| 国内成人精品| 三上悠亚 电影| 欧美优质美女网站| 乱插在线www| 伊人久久大香线蕉午夜av| av福利精品导航| hs视频在线观看| 国产精品jizz在线观看麻豆|