ReactNative(一)npm的基本使用介绍

一、package.json是什么

package.json其实可以理解为对当前文件夹的一个“目录”,跟specs文件还是有一定区别的。

关于字段的解释,可以点击链接查看字段解释。主要的已经列出来了,还有一些注意事项:

  • name :”yuba-yilai”, //一个叫做yuba-yilai的包
  • version :”1.0.0”//版本号
  • description 写一些描述,发布后在网上可以看到
  • main 入口文件
  • scripts 可选字段
  • author 作者名(算是签名吧,随便写一个)
  • license 可选字段
  • repository 代码地址
  • dependencies 存放项目或组件代码中依赖到的包
  • devDependencies 可选字段 存放测试代码依赖的包或构建工具的包

1.关于main

其实就是一个文件名称,例如”index.js"

它代表着这个库的总入口,规范下,应该这个包里面所暴露给外面使用的部分,

需要通过此文件暴露出来

2.关于可选字段

<1.关于Scripts

    "可选字段",object。Key是生命周期事件名,value是在事件点要跑的命令

    (脚本)。

参考 npm-scripts

<2. 关于license

    创建时直接回车用默认的ISC就行了

对于我来说 暂时没什么用...

3.关于package.json

里面的字典格式

 “dependencies”:{

     bao1,

     bao2,

     bao3

 },

 不可以再最后一个包后面加逗号

 当你npm install <库名称> -save时

 npm会自动排序里面的库,”,"你不用添加,自动按照格式添加的

 如果你把最后一个库的版本号后面写了一个”,”

 那么你用npm uninstall -g <库名称> 命令时,就会报错。

4.关于repository

"repository": {

"type": "git",

"url": "https://github.com/lijiaxiang/XXCollectionViewDemo.git"

},

方便作者拉取代码进行修改,也方便其他人在git上面看源码

type也可以是SVN

写上地址后会形成内容连接,显示在npmjs.com的官网库的右侧,方便别人查阅

例图.png

鱼吧的npm

5.关于依赖的库的版本,为什么你会看到^ >= <= || 看一下下面的截图

符号.png

二、linux关于npm使用的常用命令

  • 更新一个库
    npm i <库名称>

  • 发布一个当前文件所在的库
    npm publish

  • 创建一个index.js文件
    touch index.js

  • 创建一个文件夹
    mkdir <文件夹名称>

  • 给当前库增加一个管理员——会让输入npm官网的账号和 密码
    npm adduser

添加库的截图

  • 添加一个库,并且依赖这个库
    npm install <库名称> -save

  • 移除
    npm uninstall <库名称> -save

  • 查看添加了这个库


    添加库.png
  • 并且当前库,依赖了这个库


    配置文件.png

附一篇详细介绍的文档

http://www.runoob.com/nodejs/nodejs-npm.html

创建库,目前遇到的坑以及如何填补

  • 坑1:有一个比较简单的坑,我就不截图了,申请完npm账号之后,记得邮箱验证一
    下,不然发布时候会报错。

  • 坑2:在npm init 创建完package.json文件以后,要记得在npm publish发布前
    确认一下是否登录,登录一下npm账号,邮箱要填对。

    $ npm adduser
    Username: mcmohd
    Password:
    Email: (this IS public) [email protected]
    
  • 坑3:
    一个库的目录,建成这样会怎样:


    例图.png

    如果你导入这样的目录,并且引入了这个包


    导入包.png

    就会看到一个之前常困惑我们的红屏报错,原因是找不到入口,让你重新更新库。显然这个找到原因之后,改起来很ez。
    报错.png
  • 坑4:如果你目录建成这样


    屏幕快照 2017-08-30 下午4.40.30.png

    并且index.js这样写


    index.png

    也是不对的,会收到另外一个红屏报错,显示路径下没有xxtools
    正确的路径应该是: ‘./lib/xxtools’
    正确的.png
  • 坑5:
    关于node_modules嵌套node_modules这种形式的库,不推荐使用。搜索了一些文档,网上争议比较大,有说错的有说对的
    http://cnodejs.org/topic/5502416b73263b0e4eef9aeb

你可能感兴趣的:(ReactNative(一)npm的基本使用介绍)