React-Native 之 项目实战(五)】的更多相关文章

前言 本文有配套视频,可以酌情观看. 文中内容因各人理解不同,可能会有所偏差,欢迎朋友们联系我. 文中所有内容仅供学习交流之用,不可用于商业用途,如因此引起的相关法律法规责任,与我无关. 如文中内容对您造成不便,烦请联系 277511806@qq.com 处理,谢谢. 转载麻烦注明出处,谢谢. 资料:链接: https://pan.baidu.com/s/1b3abwy 密码: k8p5 ES5转ES6 关于ES6语法,建议大家可以看下阮老师的 ECMAScriot 6 快速了解的话,大家可以参…
1.Main.js /** * 主页面 */ import React, { Component } from 'react'; import { StyleSheet, Text, View, Image, Platform, //判断当前运行的系统 } from 'react-native'; /*=============导入外部组件类==============*/ import TabNavigator from 'react-native-tab-navigator'; import…
1.安装插件,cd到项目根目录下执行: $ npm i react-native-tab-navigator --save 2.主框架文件Main.js /** * 主页面 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image, Platform //判断当前运行的系统 } from 'react-native'; /*=============导入外部组件…
1.创建项目 $ react-native init BuyDemo 2.导入图片资源 安卓:把文件夹放到/android/app/src/main/res/目录下,如图: iOS: Xcode打开工程,把图片拖动到Images.xcassets里 3.根据实际需求,组织项目结构,目的是更加清晰 4.Main.js /** * 主页面 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Te…
1.More/More.js /** * 更多 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image, TouchableOpacity, Platform } from 'react-native'; // ES5 var More = React.createClass({ render() { return ( <View style={styles.…
1.Home.js /** * 首页 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, TouchableOpacity, TextInput, Image, Platform } from 'react-native'; var Dimensions = require('Dimensions'); var screenW = Dimensions.get('wi…
1.Main 目录下新建LaunchImage.js: /** * 启动页 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image } from 'react-native'; /*==============导入外部组件================*/ var Main = require('./Main'); // ES5 var Launch = R…
1.在Home目录下新建首页详细页HomeDetail.js /** * 首页详情页 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, TouchableOpacity } from 'react-native'; // ES5 var HomeDetail = React.createClass({ render() { return ( <View style=…
逻辑分析: 首页(Home)加载的购物中心组件(ShopCenter),传递url数据: ShopCenter里根据url加载购物中心详细页组件(ShopCenterDetail), ShopCenterDetail中利用WebView展示. 1.Home.js /** * 首页 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, TouchableOpacity,…
1.公共的标题栏组件TitleCommonCell.js /** * 首页购物中心 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image, TouchableOpacity } from 'react-native'; // ES5 var TitleCell = React.createClass({ getDefaultProps(){ return{…
1.MiddleBottomView.js /** * 首页中间下部分 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image, TouchableOpacity } from 'react-native'; var Dimensions = require('Dimensions'); var screenW = Dimensions.get('window…
1.HomeMiddleView.js /** * 首页中间上部分内容 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image, TouchableOpacity } from 'react-native'; var Dimensions = require('Dimensions'); var screenW = Dimensions.get('window…
1.HomeTopView为首页头部内容,HomeTopListView为HomeTopView子视图. 2.HomeTopView.js /** * 首页头部内容 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, ScrollView, Image, ListView } from 'react-native'; var Dimensions = require(…
1.创建MineHeaderView.js /** * 个人中心头部内容 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image, TouchableOpacity } from 'react-native'; // 导入系统类 var Dimensions = require('Dimensions'); var screenW = Dimensions.g…
1.新建一个MineMiddleView.js,专门用于构建中间的内容 /** * 个人中心中间内容设置 */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image, TouchableOpacity } from 'react-native'; /**-------导入外部的json数据-------***/ var MiddleData = require('…
1.新建组件CommonMyCell.js /** * 个人中心自定义cell */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image, TouchableOpacity, Platform, } from 'react-native'; // ES5 var MyCell = React.createClass({ getDefaultProps(){ re…
1.自定义可复用的cell More/CommonCell.js: /** * 自定义可复用的cell */ import React, { Component } from 'react'; import { AppRegistry, StyleSheet, Text, View, Image, TouchableOpacity, Platform, Switch } from 'react-native'; // ES5 var CommonCell = React.createClass(…
在实际开发中,还有一个影响开发效率的重要因素:调试. 在1.4.3节中已经介绍了Enable Live Debugger的使用.本节来介绍另一个非常重要的调试选项:Debug JSRemotely选项. (1)晃动设备或使用模拟器上的快捷键(iOS模拟器快捷键command + d,Android模拟器快捷键command + m)打开调试选项,效果如图2.15所示. 图2.15  React Native调试选项 (2)单击Debug JS Remotely选项.此时,React Native…
Android平台的调试和其他平台的调试也很类似,例如:在Android Studio打开的工程中,打开源码MainActivity.java,然后,将鼠标移至代码编辑区的左侧后,单击鼠标即可添加断点,接着,选择菜单Debug -> Debug ‘app’,即可调试Android应用,效果如图5.12所示. 图5.12  Android原生项目断点调试 如果要调试原生项目的实现和逻辑,可以使用上述方法:如果要调试Android的布局可以使用React Native的调试选项:Toggle Ins…
打开Android开发工具Android Studio,选择菜单 Open an existing AndroidStudio project,打开ch04项目的android文件夹,如图5.8所示. 图5.8  Android原生项目结构 从Android的项目结构,想必读者可以隐约感受到:Android适配是基于文件夹的,不同分辨率和尺寸的屏幕会自动适配相应的文件夹下的布局或资源文件.但是,想要进一步理解Android的适配,有必要先了解Android适配的一些基本概念: 屏幕尺寸:屏幕尺寸…
GraphQL + React Apollo + React Hook 大型项目实战(32 个视频) GraphQL + React Apollo + React Hook 大型项目实战 #1 介绍「03:42」 GraphQL + React Apollo + React Hook 大型项目实战 #2 搭建 Apollo 客户端「15:44」 GraphQL + React Apollo + React Hook 大型项目实战 #3 写好路由「04:07」 GraphQL + React Ap…
React Native使用props来实现页面间数据传递和通信.在React Native中,有两种方式可以存储和传递数据:props(属性)以及state(状态),其中: props通常是在父组件中指定的,而且一经指定,在被指定的组件的生命周期中则不再改变. state通常是用于存储需要改变的数据,并且当state数据发生更新时,React Native会刷新界面. 了解了props与state的区别之后,读者应该知道,要将首页的数据传递到下一个页面,需要使用props.所以,修改home.…
JSX并不是一门新的开发语言,而是Facebook提出的语法方案:一种可以在JavaScript代码中直接书写HTML标签的语法糖,所以,JSX本质上还是JavaScript语言. 小知识:语法糖(Syntactic sugar)是由英国计算科学家彼得·兰丁(https://zh.wikipedia.org/ wiki/%E5%BD%BC%E5%BE%97%C2%B7%E5%85%B0%E4%B8%81)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方便程序…
(六).React Native开源项目: 1.Pober Wong_17童鞋为gank.io做的纯React Native项目,开源地址:https://github.com/Bob1993/React-Native-Gank 2.聂风童鞋做的<都看影视>React Native项目,开源地址:https://github.com/changfuguo/doukanmv 3.大大做的<新闻阅读Reading>React Native项目,项目地址:http://www.lcode…
最近闲来无事,学习了React Native开发Android APP,自我感觉RN APP的效果和Native APP比还是蛮不错,以下是找到的一些优秀源码,仅供学习参考... React Native开源项目 1.Pober Wong_17童鞋为gank.io做的纯React Native项目,开源地址:https://github.com/Bob1993/React-Native-Gank2.聂风童鞋做的<都看影视>React Native项目,开源地址:https://github.c…
项目简介: 在Linux环境下用C语言开发的Vsftpd的简化版本,拥有部分Vsftpd功能和相同的FTP协议,系统的主要架构采用多进程模型,每当有一个新的客户连接到达,主进程就会派生出一个ftp服务进程来为客户提供服务.同时每个ftp服务进程配套了nobody进程(内部私有进程),主要是为了做权限提升和控制. 实现功能: 除了基本的文件上传和下载功能,还实现模式选择.断点续传.限制连接数.空闲断开.限速等功能. 用到的技术: socket.I/O复用.进程间通信.HashTable 欢迎技术交…
由于logo和启动屏尺寸多,react native(ios)中没有命令可以自动生成各种的尺寸,所以可以使用以下办法:在ionic项目中生成(使用命令:ionic resources)后,再粘贴到react native项目中. 一.ionic项目生成图标: 1.保证ionic和cordova的版本是最新的:使用ionic/cordova -v 查看版本 2.使用命令cordova platform version查看ios平台版本 3.安装ios版本最新的:ionic platform add…
学习任何技术,最快捷的方法就是学习完基础语法,然后模仿开源项目进行学习,React Native也不例外.React Native推出了1年多了, 开源项目太多了,我们以其中一个举例子.给大家演示下如何运行开源项目.(前提是你已经搭建好React Native环境了) 下载开源项目 首先需要找到开源项目 ,比如下面这个.地址: https://github.com/Bob1993/react-native-gank 进入github, clone到本地或者直接download到本地.按照之前运行…
本文为老曾原创.转载需注明出处:viewmode=contents">http://blog.csdn.net/minimicall?viewmode=contents 在上一节中,我们通过一个相冊的制作来学习了React Native编写.这一节我们须要開始学习React Native的源代码. 学习源代码,从编译源代码開始. 首先.我们须要把代码从github中克隆下来. https://github.com/facebook/react-native.git 然后,我们能够切换到它的…
今天是肿么了......一上班创建React Native项目,react-native run-ios运行就报错,运行不了...呜呜...... 一开始以为自己react-native run-ios命令敲错,再然后以为Xcode缓存,再然后以为电脑问题,关机重启...问题依然存在,好在解决了.... 报错截图: 上网查了很多资料没有找到解决方案,估计是react-native版本的问题. 查看package.json文件: 发现是0.45.0版本...我记得之前都是0.44的版本的.....…