iOS高级开发ReactNativeReact Native开发技巧

iOS原有项目如何引入ReactNative框架,实现跨平台?

2017-05-31  本文已影响44人  ptlCoder

目录创建--------------

1.在根目录下创建"package.json"文件:

package.json的内容示例:

{

"name": "KMNetPatient",

"version": "0.0.1",

"private": true,

"scripts": {

"start": "node node_modules/react-native/local-cli/cli.js start"

},

"dependencies": {

"react": "15.4.2",

"react-native": "0.41.2"

}

}

其中react和react-native的版本可以通过终端命令:

$ npm info react找到version字段

$ npm info react-native找到version字段

2.在根目录下创建"index.ios.js"文件.

<见图一>

React Native框架--------------------

3.对于一个典型的React Native项目来说,一般package.json和index.ios.js等文件会放在项目的根目录下。而iOS相关的原生代码会放在一个名为ios/的子目录中,这里也同时放着你的Xcode项目文件(.xcodeproj)。

4.在包含有package.json文件的目录(一般也就是项目根目录)中运行下列命令来安装:

$ npm install

5. React Native框架整体是作为node模块安装到项目中的。下一步我们需要在CocoaPods的Podfile中指定我们所需要使用的组件。

6.在iOS原生代码所在的目录中(也就是`.xcodeproj`文件所在的目录)执行:

$ pod init

7. Podfile会创建在执行命令的目录中。你需要调整其内容以满足你的植入需求。调整后的Podfile的内容看起来类似下面这样:

# target的名字一般与你的项目名字相同

target 'NumberTileGame' do

# 'node_modules'目录一般位于根目录中

#但是如果你的结构不同,那你就要根据实际路径修改下面的`:path`

pod 'React', :path => '../node_modules/react-native', :subspecs => [

'Core',

'RCTText',

'RCTNetwork',

'RCTWebSocket', #这个模块是用于调试功能的

#在这里继续添加你所需要的模块

]

end

8.在你开始把React Native植入到你的应用中之前,首先要决定具体整合的是React Native框架中的哪些部分。而这就是subspec要做的工作。在创建Podfile文件的时候,需要指定具体安装哪些React Native的依赖库。所指定的每一个库就称为一个subspec。

可用的subspec都列在node_modules/react-native/React.podspec中,基本都是按其功能命名的。一般来说你首先需要添加Core,这一subspec包含了必须的AppRegistry、StyleSheet、View以及其他的一些React Native核心库。如果你想使用React Native的Text库(即组件),那就需要添加RCTText的subspec。同理,Image需要加入RCTImage,等等。

9. $ pod install

10.运行项目(Run).

上一篇下一篇

猜你喜欢

热点阅读