此项目显示如何构建源代码以在多个设备上运行。到目前为止,它能够运行:
- iOS和Android应用程序(基于反应本身)
- 基于NW或基于Electron的桌面应用程序
- 任何浏览器中的网站应用(基于反应)
网站应用程序的演示可在这里。
截图
移动应用(iOS和Android)
桌面应用(NW&Electron)
网站应用
图书馆/工具
该项目使用的库和工具,如:
- es6语法和babel
- 对网站应用和桌面应用做出反应,
- 针对iOS和Android应用程式的原生应用
- NW打包桌面应用程序
- 电子包装桌面应用程序
- 通量组织数据流管理
- css-loader将样式集成在构建中
- 哼着创建构建
- webpack在开发阶段通过热重新加载来帮助
基本理念
所有代码都包含在src
目录中,特别是用于构建的3个主要条目文件:
-
index.ios.js
并且index.android.js
是用于构建iOS和Android应用程序的那些 -
index.js
是用于构建网站应用和桌面应用程序的代码,因为代码是完全相同的。
助焊剂建筑行动/商店
所有的通量架构都可以分享到所有不同版本的100%。这意味着所有的逻辑和数据管理代码只能执行一次,并在任何地方重用。这样我们也可以使用简单的测试套件,并确保我们的代码在所有设备上正常工作。
组件
该项目的真正兴趣在于组件如何被组织以分享其大部分逻辑,并且仅重新定义每个设备特定的内容。
基本上,每个组件都有一个main Class
,它继承了Class
包含所有逻辑的基础。然后,主要组件导入在构建期间选择的不同的Render函数。文件扩展名.ios.js
,.android.js
或.js
由构建工具用于仅导入正确的文件。
这些.native.js
文件包含两个移动平台(iOS和Android)之间共享的代码。目前,由于所有代码现在共享.ios.js
,.android.js
文件和文件将构成该.native.js
文件。但是,如果组件因平台具体原因而需要不同,则该代码将被包含在相应的平台特定文件中。
最后,每个组件由6个文件定义。如果我们看屏幕组件,这里是它的结构。
Screen.js
├── ScreenBase.js
├── ScreenRender.ios.js (specific to iOS build
├── ScreenRender.android.js (specific to Android build)
├── ScreenRender.native.js (shared mobile app code - iOS & Android)
└── ScreenRender.js (used during Website and Desktop build)
这里是Class
组成文件的主文件。
' use strict ' ;
从“ ./ScreenBase ”导入基数 ;
从“ .ScreenRender ”导入渲染 ;
export default class Screen extends Base {
constructor(props){
super(props);
}
render(){
return Render。调用(此,此。道具,此。状态);
}
}
下一步是什么
以下是关于下一步可能遇到的一些想法:
- 使网站应用程序同构/通用
谢谢罗伯特的真棒设计
我想感谢罗伯特·奥多夫,他授权我重用他非常漂亮的设计。罗伯特的原创设计是他在这里可见的“简化”项目的一部分。
如何构建/运行项目
运行任何具体项目前的一般要求
-
npm install
安装所有依赖项,React and React Native等。
使用某些版本的npm(> = v3.3.10 <= v3.6.0)
有些构建从npm包括错误npm install
。因此,如果您使用的是包含3.3.10到3.6.0范围内的npm版本,则必须运行npm install
两次。那些包括npm v3.3.12的版本是默认捆绑的,从版本v5.1.0到v5.5.0的节点。
-
npm install npm
-
npm install npm
运行它两次,因为第一次运行#10985后将不会安装程序包
移动应用(iOS和Android)
React Native的要求
iOS
- OS X
- 建议使用Xcode 6.3或更高版本(Xcode仅在Mac上运行)。
- Homebrew是安装节点,守望者和流的推荐方式。
-
brew install node
-
brew install watchman
。我们建议安装守望者,否则你可能会遇到节点文件查看错误。 -
brew install flow
。如果要使用流量。
Android
- 请遵循以下官方文档指南:http : //facebook.github.io/react-native/docs/getting-started.html#android-setup(包括实验性Windows和Linux支持)
运行移动应用程序
iOS
- 打开iosApp.xcodeproj并在Xcode中运行。
- 在你的iOS模拟器中点击cmd + R来重新加载应用,看看你的改变!
Android
-
打开一个模拟器。(Genymotion或运行
android avd
) -
运行
react-native run-android
在这个项目的根目录。 - 如果尝试在设备上运行,请阅读以下指南:http : //facebook.github.io/react-native/docs/running-on-device-android.html#content
恭喜!您刚刚成功将该项目作为iOS或Android应用程序运行。
网站应用
反应要求
没有任何额外的要求,因为你已经安装了deps npm install
。
快速开始
-
npm run build
建设项目(至少第一次) -
npm run serve-web
在浏览器中使用webpack-dev-server 在http:// localhost:8000 / index.web.html或http:// localhost:8000 / webpack-dev-server / index.web.html上预览并启用热重新加载
恭喜!您刚刚成功将该项目作为网站应用程序运行。
桌面应用程序
您可以使用NW或电子来运行项目。
NW要求
要运行该项目,您应该运行如下:
/path/to/nw .
在OSX上,可执行文件位于.app文件中的隐藏目录中。安装它的更简单的解决方案是在http://nwjs.io/上下载应用程序,然后将其复制到您的应用程序文件夹。您现在可以运行:
/Applications/nwjs.app/Contents/MacOS/nwjs .
您还可以设置一个别名来调用二进制文件。
alias nw="/Applications/nwjs.app/Contents/MacOS/nwjs"
快速从NW开始
-
npm run build
建设项目(至少第一次) -
npm run serve-nw
启动桌面应用程序并启用livereload
恭喜!您刚刚成功将该项目作为桌面应用程序运行。
电子快速启动
-
npm run build
建设项目(至少第一次) -
npm run serve-electron
启动桌面应用程序并启用livereload
-
安卓科学计算器源码
安卓科学计算器源码介绍:是一个基于安卓的计算器项目源码,除了可以实现了系统自带计算器功能外还可以进行基本函数的运算和括号的运算,能根据表达式的优先级来自动区分运算顺序。另外在软件的下方也能根据按键进行
-
Android计算器APP源码 手机app项目源码免费下载
Android计算器APP源码 手机app项目源码免费下载 Android计算器APP源码 手机app项目源码免费下载
-
Android干果-简洁易用的 gank 客户端
anguo 干果简洁易用的gank客户端 介绍 一款基于GankIo开发的练手项目。项目采用 MVP+Dagger2+Retrofit + RxJava开发。首页布局样式大致参考掘金客户端。 应用截图、 Gif 特性 基本遵循MD风格 MVP+dagger2架构模式的项目应用 retrofit+rxjava配合使用 rxbus组
-
ReactNative亲戚称谓计算器Android项目
RnRelative亲戚称谓计算器 使用React-Native 0.17和Redux 3.0.4的示例项目 一些技巧 这是使用Redux启动反应性应用程序的回购。 直到React Native在React之上,而不是运送React的分支,您将需要继续使用React Redux 3.x分支和文档。 去做 返回键 EqualButton
-
一个简洁的展示NBA新闻和事件安卓APP应用
由于最近发现这个应用被别人直接拿来稍作修改后上传到应用商店。这个项目里的新闻等数据来源也未获取授权,最初的开源的目的是用来学习交流的, 也未考虑过到应用商店发布,所以现在的情况违背了当初的初衷,所以决定关闭web服务器,此项目的效果将无法再呈现。 N
- 织梦cms模板
- 站长源码
- 个人主页模板
- 源码超市
- 个人简历网页模板
- 飞天侠淘宝客
- php教程下载
- asp.net 源码
- 个人网站模板下载
- 网站下载
- php论坛
- 个人网站设计模板
- 软件源码
- 网站 模板
- 网页在线客服代码
- asp cms
- 导航条代码
- 源代码 在线
- 源码网站
- 网页框架
- 学生个人网页制作
- 网站右下角广告
- 网页制作模板
- 分类信息程序
- 企业网站模板下载
- 导航网站源码
- 免费个人网站模板
- 免费下载
- oa系统下载
- 即时通讯
- 网页下载
- 登录界面代码
- 网上商城模板
- 个人博客模板
- 后台管理
- 图片代码
- 后台模板
- 个人网站源码
- 网页模板
- 建站代码
- 源码站
- 网站模版下载
- 学生学籍管理系统
- 网页模板下载
- 帝国cms模板
- 个人网页模板
- asp代码
- asp网站源码
- 小区物业管理系统
- 整站程序