用react-native开发一个IOS NBA资讯app(一) ----构建基本项目(持续更新)

news/2024/7/4 9:14:46

因为最近工作的原因,对app开发产生了浓烈的兴趣,但是感觉直接学习一门开发语言,构建个app也不知道要猴年马月了。前端时间也一直在看react,对react产生了好感,便一发不可收拾,看了阮老师的react入门教材,就想寻思着,耶,既然有了兵器了,咋们也去打打怪,长长见识,便有一种想要用react干项目的冲动。正巧了,app+react = react-native,这么一琢磨,得了,就用react-native做一个app吧,这多有意思,用js来干一个app,想想整个人都是非常的急冻,霍霍,说干就干。干点啥呢,平时喜欢看NBA,就直接做一个和篮球相关的吧。
好了,言归正传,首先要做react-native开发。必须要做好准备,首先要让xcode更新以下版本(具体是最近最好,因为我对ios也了解不深入,害怕用不了)。然后就是最重要的nodejs。在官网https://nodejs.org/en/下载nodejs版本(推荐下载LTS,相对来说更新幅度不会那么快)。然后按照以下步骤来完成react-native项目的环境搭建:

(1)建议安装watchman,终端命令:brew install watchman
(2)安装flow:brew install flow

这两个步骤是完成react-native的依赖。现在我们需要创建一个React-Native的项目,因此可以按照下面的步骤:

(1)安装命令行工具:sudo npm install -g react-native-cli
(2)创建一个空项目:react-native init HelloWorld
(3)找到创建的HelloWorld项目,双击HelloWorld.xcodeproj即可在xcode中打开项目。xcodeproj是xcode的项目文件。
(4)在xcode中,使用快捷键cmd + R即可启动项目。基本的Xcode功能可以熟悉,比如模拟器的选择等。

启动完成后,你会看到React-Packger和iOS模拟器,具体的效果如下,说明你创建项目成功了。

接下来我们来看一下我们项目news的结构目录。
图片描述

文件img是专门来放置图片的。
文件server是一个专门提供数据的后台服务器,这里是用nodejs的express来搭建的,这里要多说几句,要感谢虎扑给我们提供了这么多的数据源。关于server爬虫的有关内容我们放在后面来说。
文件views是放置我们项目的组件。因为众所周知,react的核心思想中的一个,就是用组件来可复用的开发,我非常喜欢这种方式,并且在写这个项目的时候,也慢慢领会到组件开发的好处。
文件config是一个配置app和服务器参数的文件。
文件index.ios.js是项目的主入口,相当于就是java或c中的main.
文件util.js是用作app中的一些工具类或者函数的存放地。

下一章,我们来讲一讲server后台提供数据。
项目地址:https://github.com/strongwray...


http://www.niftyadmin.cn/n/3172432.html

相关文章

Postman无返回值的说明

使用发送POST的男人时,后端接受到了请求,也可以返回响应,但是发送POST的男人却接受不到返回值,搞了半天没啥用,后来在设置中把请求超时的时间改成0(0就是一直等待服务器的返回消息),Response出现了&#xf…

Chapter 2 ARMv8-A Architecture and Processors

ARMv8-A架构和处理器 变化: 1、大的物理地址,使得处理器能够访问超过4GB的物理内存 2、64位虚拟寻址,这使得虚拟内存超过了4GB的限制。这对于使用内存映射文件I/O或稀疏寻址的现代桌面和服务器软件来说很重要。 3、自动事件信号,这…

Docker ubuntu中更新软件源

cp /etc/apt/sources.list /etc/apt/sources.list_buckup -> 将/etc/apt目录下的文件进行备份,防止意外vi /apt/etc/sources.list 删除所有行(命令为ggdG),并将最后的阿里软件源粘贴,使用其他的也ok apt-get clean -> 删除包缓存中的…

Chapter 13 Memory Ordering

第十三章 内存排序 如果你的代码直接与硬件或在其他核心上执行的代码交互,或者直接加载或写入要执行的指令,或者修改页表,你需要注意内存排序问题。在所有这些情况下,内存排序问题都由相关代码为您处理. 如果您正在编写操作系统内…

Docker mysql 和 flask容器连接 bug解决

我是用的 --linkcontainer_name:aka方法连接的两个容器&#xff0c;所以在使用SQLAlchemy连接mysql的时候&#xff0c;需要使用aka别名作为IP地址&#xff0c;如下所示。 <user>:<passwd>aka:<port>/<database>Docker 会把aka转化成mysql容器的地址&a…

MD5加密函数实现

2019独角兽企业重金招聘Python工程师标准>>> 代码如下&#xff1a; import java.security.MessageDigest; public class MD5Util {/*** * MD5加密 生成32位md5码* param 待加密字符串* return 返回32位md5码*/public static String md5Encode(String inStr) throws …

Linux内核设计与实现笔记

第3章 进程管理 进程 进程描述符及任务结构 分配进程描述符&#xff0c;通过slab分配器分配task_struct&#xff0c;达到对象复用和缓存着色的目的 task_struct thread_info 每个任务的thread_info结构在他的内核栈的尾端分配&#xff0c;结构中task域中存放的是指向该任务task…

顺序表的个人心得

为什么要有顺序表&#xff1f; 为了有序存储连续的数据。顺序表存储&#xff1a;开辟连续的内存空间&#xff0c;空间里保存真实数据的引用地址&#xff0c;因为地址固定存储四个字节&#xff0c;可以让当前数据结构产生一种规律&#xff0c;不管访问哪个元素&#xff0c;用开始…