點擊菜單欄:Atom->Preferences,或者可以”Command+,”快捷打開
然后,在Install Packets的輸入框中,輸入nuclide,出現的第一個就是我們想要安裝的,點擊install
默認安裝nuclide之后,會安裝一大堆的依賴包,安裝完成后
可以看到,紅色部分是額外的Toolbar可以快捷打開一些選項,小的紅色框里多了一個nuclide選項。
如果沒有默認安裝這些依賴包,可以選中,Packages->Settings View->Manage Packets
然后,搜索nuclide,再nuclide package上雙擊,進入設置
勾選Install recommended packets on startup
退出Atom,再打開,會發現自動安裝這些依賴包
react-nativeinitDemo--verbose
然后,打開Atom,點擊Add project folder
再在右側目錄雙擊index.ios.js,你看到的應該是這樣的界面
我們在這一行上面,輸入fun
classDemoextendsComponent{
會看到
然后,會車,你就會發現自動生成了方法
functionfunctionName(){}
自動補全肯定沒有XCode 或者Android Studio來的那么強力,不過有總比沒有好對吧。
將光標放到上文提到的functionName上,你會發現如圖,就是出現了這個方法的類型
這時候,點擊出現的針頭,那么這個類型標注就會一直顯示在界面上
我們在function里隨便輸入
functionfunctionName(){a }
1
2
3
然后,command+s保存文件,這時候,正常會出現如下檢查錯誤
其中
1,表示這一行有錯誤,點擊那個紅色的三角圖標,你可以看到詳細的錯誤描述
2,表示整個工程的錯誤 ??點擊2,你會看到錯誤和警告的列表
如果這里,沒有檢查出錯誤
打開終端,cd到工程的根目錄,例如我的
/Users/huangwenchen/Desktop/Demo
然后,用終端檢查flow能否正常工作
Leo-2:Demohuangwenchen$flow
如果出現錯誤
.flowconfig:97WrongversionofFlow. The config specifiesversion^0.25.0butthisisversion0.20.1Leo-2:Demo huangwenchen$ brew update flow
證明你本地的flow版本和react native默認使用的flow版本不一致,通常,更新到最新版本即可
Leo-2:Demo huangwenchen$ brew upgradeflow==>Upgrading1outdated package,withresult: flow0.25.0==>Upgradingflow==>Downloadinghttps://homebrew.bintray.com/bottles/flow-0.25.0.el_capitan.bottle.tar.gz########################################################################100.0% ==>Pouring flow-0.25.0.el_capitan.bottle.tar.gz==>Caveats
使用command+鼠標左鍵
第一步,運行react native packager
點擊 command + shift + p打開command palette(打開終端選項),然后輸入
reactnativestart
然后,選擇
Nuclide React Native :Start packager
如果,出現錯誤
/Users/huangwenchen/Desktop/Demo/node_modules/react-native/local-cli/cli.js:123class CreateSuppressingTerminalAdapter extends TerminalAdapter { ^^^^^SyntaxError:Unexpected reserved word at exports.runInThisContext(vm.js:73:16) at Module._compile (module.js:443:25) at Object.Module._extensions..js(module.js:478:10) at Module.load(module.js:355:32) at Function.Module._load (module.js:310:12) at Function.Module.runMain(module.js:501:10) at startup (node.js:129:16) at node.js:814:3
說明你node的版本太低,運行以下命令更新
sudonpm cache clean-fsudonpm install -g nsudon stable
第二步,終端運行項目
cd到項目目錄,執行
$ react-native run-ios ?$ react-native run-android
執行完上面一步后,你應該會看到這樣的模擬器界面
然后,在Nuclide中,點擊 command + shift + p打開command palette(打開終端選項),輸入react native debug
接著,點擊模擬器,Command+D,選擇Enable Remote JS debugging
這時候,你會看到,Nuclide中,加載了debug窗口
和很多IDE一樣,在每一行左邊左鍵可以添加斷點了
同時,修改代碼看看效果
functionmyLog(){console.log("adtad"); }classDemoextendsComponent{render() { myLog();return( Welcome to React Native! ......
保存,點擊模擬器,Command+R,會發現,停在了斷點處
其它的都是JS的調試技巧了,這里不再贅述,后面寫博客的時候,遇到了再說。
像網頁調試,你可以再瀏覽器里動態修改網頁的HTML代碼,在React Native中調試你也可以
Command + shift + p然后打開如下圖
接著,你就會發現像HTML的Element Inspector出現了,你可以看到視圖的布局和對應的屬性