React-Native在gitHub下载的Demo不能运行问题!!!

1、目前找到的最可行的运行React-Native Demo的解决方案

请参考:http://blog.csdn.net/shubinniu/article/details/52873250

2、检查react和react-native的版本号并安装

npm info react-native(目前是0.34.1)

知道最新版本后,通过以下命令来安装:

npm install --save react-native@0.34.1

同样,npm info react(目前是15.3.2)

知道最新版本后,通过以下命令来安装:

npm install --save react@15.3.2

3、npm install 和package.json的作用

参考:http://blog.csdn.net/haidaochen/article/details/8546796

   http://ju.outofmemory.cn/entry/130809

  npm install --save 安装的同时,将信息写入package.json中

  项目路径中如果有package.json文件时,直接使用npm install方法就可以根据dependencies配置安装所有的依赖包

  这样代码提交到github时,就不用提交node_modules这个文件夹了。

  npm init 会引导你创建一个package.json文件,包括名称、版本、作者这些信息等

  npm remove 移除

  npm update 更新

package.json文件内容

{

"name": "douApp",

"version": "0.0.1",

"private": true,

"scripts": {

"start": "node_modules/react-native/packager/packager.sh"

},

"dependencies": {

"react-native": "^0.17.0"

}

}

备注:

(1)name和version是package.json中最重要的两个字段,也是发布到NPM平台上的唯一标识,如果没有正确设置这两个字段,包就不能发布和被下载。

(2)scripts

  通过设置这个可以使NPM调用一些命令脚本,封装一些功能。

(3)dependencies

  指定依赖的其它包,这些依赖是指包发布后正常执行时所需要的,如果是开发中依赖的包,可以在devDependencies设置。

  package.json作用 就是下载react-native包

  Dependencies

  可选字段,指示当前包所依赖的其他包。

{ "dependencies" :

  { "foo" : "1.0.0 - 2.9999.9999"

  , "bar" : ">=1.0.2 <2.1.2"

  , "baz" : ">1.0.2 <=2.3.4"

  , "boo" : "2.0.1"

  , "qux" : "<1.0.0 || >=2.3.1 <2.4.5 || >=2.5.2 <3.0.0"

  , "asd" : "http://asdf.com/asdf.tar.gz"

  , "til" : "~1.2"

  , "elf" : "~1.2.3"

  , "two" : "2.x"

  , "thr" : "3.3.x"

  }

}

版本格式可以是下面任一种:

  • version 完全匹配
  • >version 大于这个版本
  • >=version大于或等于这个版本
  • <=version
  • ~version 非常接近这个版本
  • ^version 与当前版本兼容
  • 1.2.x X代表任意数字,因此1.2.1, 1.2.3等都可以
  • http://... Unix系统下使用的tarball的URL。
  • *任何版本都可以
  • ""任何版本都可以
  • version1 - version2 等价于 >=version1 <=version2.
  • range1 || range2 满足任意一个即可
  • git... Git地址
  • user/repo