1. 程式人生 > >【REACT NATIVE 系列教程之九】REACT NATIVE版本升級步驟與注意事項!

【REACT NATIVE 系列教程之九】REACT NATIVE版本升級步驟與注意事項!

       由於React Native處於快速迭代發展中,因此元件功能的擴充套件、語法的變更也將會有較大的區別,因此升級版本則屬於務必掌握的了。

昨天Himi剛從0.23版本升級到0.26,升級的主要原因有兩點:

1. 一些元件在最新版本中加入了很多新的屬性,例如0.23版本中Modal動畫沒有最新的屬性:

animationType  enum(‘none’, ‘slide’, ‘fade’)

2. 另外RN在0.25版本有了重大更新:

重大變更

在react-native中引用React的做法發生了變更(在當前版本老的做法會提出警告,在下一版本將會報錯):

之前

1import React,{Component
,View}from'react-native';

現在

12import React,{Component}from'react';import{View}from'react-native';

具體哪些屬於React,哪些屬於React Native,可以參考這篇帖子(需要科學上網)。

我摘錄如下:

“react”:

Children
Component
PropTypes
createElement
cloneElement
isValidElement
createClass
createFactory
createMixin

“react-native”:

hasReactNativeInitialized
findNodeHandle
render
unmountComponentAtNode
unmountComponentAtNodeAndRemoveContainer
unstable_batchedUpdates
View
Text
ListView

以及其他所有的原生元件。

因0.25版本的重大更新,Himi更新到了當前的0.26最新版本,下面來分享如何進行RN的版本升級吧。

注意:升級前請先備份專案,以免造成一些檔案丟失或者被覆蓋的情況

一:先到專案下開啟 package.json 檔案,將dependencies下的react-native版本號改成最新(或指定版本號)如下圖:

111111

二:開啟終端,以此輸入如下命令進行操作:

1. cd /Users/Himi/xxxxxx   

先cd到你專案的根目錄下

2. npm install

安裝最新的React Native版本,成功後可能會出現如下類似警告:

1npm WARN react-native@0.26.2requiresapeer of
react@15.0.2but none was installed.

3. npm install –save [email protected]

更新最新的React且專案下package.json 的 dependencies下的react版本會被修改為 15.0.2

4. react-native upgrade

升級專案模板檔案,過程中如果提示是否覆蓋,可以鍵盤輸入’Y’,回車進行覆蓋即可。

5. react-native -v

通過如上命令來看最新的版本,檢測是否升級成功!

到此升級過程將結束,那麼下面對已有的專案要重新build,方式如下幾種:

1:升級完成後,請重新clean專案,重新build

2. 用最新的RN命令init一個新專案,將自己的工程檔案copy到新專案中

3. 直接通過下載官方最新的純淨專案: 

將自己的工程檔案copy到這個純淨的專案中

由於Himi經歷的版本更新有語法變更,因此還要注意如下兩點:

備註1:import匯入方式更改為最新方式 (如果沒有版本更新沒有語法變更,請無視)

備註2:匯出一個類給別的模組用,也要改為用export default的方式 (如果沒有版本更新沒有語法變更,請無視)

相關推薦

REACT NATIVE 系列教程REACT NATIVE版本升級步驟注意事項

       由於React Native處於快速迭代發展中,因此元件功能的擴充套件、語法的變更也將會有較大的區別,因此升級版本則屬於務必掌握的了。昨天Himi剛從0.23版本升級到0.26,升級的主要原因有兩點:1. 一些元件在最新版本中加入了很多新的屬性,例如0.23版本中Modal動畫沒有最新的屬性:a

REACT NATIVE 系列教程真機執行報錯COMMAND /BIN/SH FAILED WITH EXIT CODE 1 的解決方法

Himi最近在真機執行遇到  Command /bin/sh failed with exit code 1  的錯誤, 模擬器執行沒有任何問題。此問題已解決,這裡分享下解決方案。先來看下錯誤日誌,如下圖:主要是劃線的部分:1.PhaseScriptExecution Bundle\ React\ Nativ

REACT NATIVE 系列教程重新整理元件RENDER(重新渲染)的三種方式詳解

開發過遊戲的都應該很清楚,“刷屏”是多麼的重要。其實開發應用也如此,當元件的資料被修改後,如何及時更新元件呈現出最新的資料與效果一樣至關重要。那麼這裡Himi大概講三種常用的方式:this.setState()  【最為常用】這是在事件處理函式中和請求回撥函式中觸發 UI 更新的主要方法。一般情況下setSt

REACT NATIVE 系列教程NAVIGATOR(頁面導航)的基本使用傳參

今天介紹一種應用開發中常用的負責頁面切換及導航功能的元件:Navigator一:Navigator對於頁面導航其實主要功能就是:每個頁面都知道本身應該切換到哪個頁面,並且切到的頁面會記錄從哪裡來,如果要返回的話,知道返回到哪個頁面。這一切都不需要再用邏輯管理!而且每個頁面之間也可以進行引數傳遞,很方便的元件。

REACT NATIVE 系列教程十三利用LISTVIEWTEXTINPUT製作聊天/對話方塊&&獲取元件例項常用的兩種方式

補充說明:一:很多童鞋問,鍵盤調出來被擋住了,那麼下面給出三個解決方案:1. 在render最外層包一個ScrollView,然後當鍵盤調出時,scrollTo即可實現。2. 在底部新增一個可變化高度的view,根據鍵盤獲取、失去焦點時,進行處理實現二:有的童鞋說對話方塊的背景沒有根據內容長短自適應,OK ,

REACT NATIVE 系列教程十一外掛的安裝、使用更新(示例:REACT-NATIVE-TAB-NAVIGATOR)

本篇主要來詳細介紹如何安裝、升級外掛及講解一個react-native-tab-navigator的示例。本文舉例使用的外掛:react-native-tab-navigator ,選項卡形式的導航1. 通過  https://www.npmjs.com 找到我們想使用的外掛, 搜尋:react-native

Docker系列教程如何構建Dockerfile

在上一篇文章中,我們講述了 Dockerfile 的組成以及指令的編寫過程,在本篇文章中詳細講解如何構建 Dockerfile 。 Dockerfile常用的指令 那麼在講如何構建 Dockerfile 之前,我們回顧一下上一篇的編寫過程:

Docker系列教程如何將自制的漏洞環境打包成映象進行共享

我在之前的文章中只是說過,利用 Dockerfile 去拉去映象,而這些映象的拉取都是從 Docker Hub 上拉取下來,而現在我有個想法,我製作好了一個漏洞環境整合的映象,我又該如何進行開源共享,提供給別人使用呢?這就是我們今天的主題了。 首先我們得準備一個 Docker Hub 的帳號, Docker

Docker系列教程Dockerfile入門

在上一篇的文章中,我們把 Docker 容器的工作流程剖析的十分清楚了,我們大體可以知道 Docker 元件協作執行容器可以分為以下幾個過程: Docker 客戶端執行 docker run 命令 Dockerdaemon

Docker系列教程Docker容器是如何工作的

在上一篇的文章中,我給大家主要介紹了一下 Docker 環境的搭建,簡單的講解了一下 Docker 架構,以及用 Docker 命令簡單演示了一下如何拉去一個 images 映象。本篇我們將剖析一下 Docker&nbs

OpenCV入門教程 非線性濾波專場 中值濾波 雙邊濾波

                正如我們上一篇文章中講到的,線性濾波可以實現很多種不同的影象變換。然而非線性濾波,如中值濾波器和雙邊濾波器,有時可以達到更好的實現效果。鄰域運算元的其他一些例子還有對二值影象進行操作的形態學運算元,用於計算距離變換和尋找連通量的半全域性運算元。 先上一張截圖:一、理論與概念講解

OPNET學習系列文章2兩個固定節點通訊

九步入門OPNET程式設計 1.新建一個專案 在選單欄依次點選File-New,選擇Project,然後點選OK進入Entername頁面,分別輸入Project Name和Scenario N

Express全系列教程():將session上傳至mysql數據庫

brush l數據庫 inf port module ava 一個 coo oca 一、簡介 實際引用中,有些公司在不同地區會設置不同服務器,因此就需要用到nginx以實現負載均衡,這時,將session數據保存至數據庫就成為了需要面對的問題,我們以MySQL數據庫為例,

外掛化系列開發--Android 全面外掛化 RePlugin 流程原始碼解析

 RePlugin,360開源的全面外掛化框架,按照官網說的,其目的是“儘可能多的讓模組變成外掛”,並在很穩定的前提下,儘可能像開發普通App那樣靈活。那麼下面就讓我們一起深入♂瞭解它吧。 (ps :閱讀本文請多參考原始碼圖片 ( ̄^ ̄)ゞ ) 一、介紹   RePlugi

稀飯react native 實戰系列教程自定義原生UI元件

上一節,講了關於RN的自定義原生模組,本節是關於自定義原生UI元件,學習完本節,你將瞭解到原生UI元件的開發流程,以及js如何向native傳送命令和native如何向js傳送事件。 原生UI元件之VideoView視訊播放器開發 React Nativ

React Native系列教程構建React Native官方Examples

尊重版權,未經授權不得轉載 本文出自:賈鵬輝的技術部落格(http://blog.csdn.net/fengyuzhengfan/article/details/72835364) 告訴大家一個好訊息,為大家精心準備的React Native視訊教程釋出了,大家

React Native系列教程Mac(OSX)平臺搭建React Native開發環境

尊重版權,未經授權不得轉載 本文出自:賈鵬輝的技術部落格(http://blog.csdn.net/fengyuzhengfan/article/details/72575799) 告訴大家一個好訊息,為大家精心準備的React Native視訊教程釋出了,大家

React Native系列教程Windows平臺搭建React Native開發環境

尊重版權,未經授權不得轉載 本文出自:賈鵬輝的技術部落格(http://blog.csdn.net/fengyuzhengfan/article/details/72454037) 告訴大家一個好訊息,為大家精心準備的React Native視訊教程釋出了,大家

REACT NATIVE 系列教程之一觸控事件的兩種形式四種TOUCHABLE元件詳解

本文是RN(React Native)系列教程第一篇,當然也要給自己的群做個廣告:  React Native @Himi :126100395  剛建立的群,歡迎一起學習、討論、進步。本文主要講解兩點:1.   PanResponder:觸控事件,用以獲取使用者手指所在螢幕的座標(x,y)或觸發、或滑動、或

前端CentOS 7 系列教程五: 安裝最新版 nginx 並設置 nginx 代理轉發 node 服務

con config get http ati sha cal 安裝 pre 轉載請註明出處:http://www.cnblogs.com/shamoyuu/p/linux_5.html 進入/usr/local目錄 cd /usr/local 下載最新