使用CocoaPods在现有项目集成React-Native

  1. 使用命令 react-native init newProject 新创建一个react Native项目。
  2. 将新创建的react native项目中的index.ios.js文件和node_modules,package.json放在一个文件夹中,如下图所示。react-native新创建的文件夹
  3. 在已有的iOS工程里集成CocoaPods(集成步骤见上一篇博文),在podfile文件中写下如下代码:
    path根据自己的工程目录修改

platform :ios, ‘7.0’ target “RN-React-Native” do pod ‘React’, :path => ‘./react-native/node_modules/react-native’, :subspecs => [
‘RCTText’,
‘RCTImage’,
‘RCTWebSocket’,
‘RCTPushNotification’,
‘RCTActionSheet’,
‘ART’,
‘RCTCameraRoll’ ] end

4.podfile文件修改完之后,cd到iOS项目工程的根目录里执行命令 pod install ,安装RN所需库文件。

5.使用生成好的.ccworkspace打开项目,在原有iOS工程里新建一个派生类ReactView,为更好的理解RN+iOS混合开发,然后在init …frame方法里写入以下代码

导入头文件:#import “RCTRootView.h”

-(instancetype)initWithFrame:(CGRect)frame{
if (self = [super initWithFrame:frame]) {
NSURL *jsLocation = [NSURL URLWithString:@”http://localhost:8081/index.ios.bundle“];
RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsLocation moduleName:@”iostaoge03”
initialProperties:nil launchOptions:nil];
self.rootView = rootView;
[self addSubview:rootView];
}
return self;

}

6 . ViewController.m的viewDidLoad里添加视图,

  • (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    ReactView *rootView = [[ReactView alloc]initWithFrame:CGRectMake(110, 110, 220, 220)];

    [self.view addSubview:rootView]; }

7.启动RN服务 npm 终端命令:cd 到下图标注的目录执行命令

npm start

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值