Nodejs

2019-08-02  本文已影响0人  冷r

node介绍

node优点

node作用

多加了一层通讯,肯定会有一定的性能损耗。但分层带来的损失,- -定能在其他方面的收益弥补回来,而

且合理的分层能让职责清晰、方便协作,大大提升开发效率。也可以通过优化通讯方式和协议,尽可能把

损耗降到最低。

node特性

       I指代input 输入
       0指代output输出

node 安装

通过cmd命令窗口中输入下面命令,来检查是否安装成功:

C: \Users\S> node -v
C: \Users\S> npm -v

  1. 因为我们想访问一个包或者一个文件,只能在它的存放路径去访问
  2. 如果想在其他路径访问,会报错,提示找不到文件或者命令

gulp -v
gulp不是内部或外部命令,也不是可运行的程序或批处理文件。

注意:修改好环境变星,需要重开cmd.exe命 令提示符

npm config set prefix <指定npm全局安装包的存放路径>
npm config set cache <指定npm下包的缓存路径>

如果目录不存在,nodejs会自动创建

什么是单线程

什么是非阻塞

nodejs提供了一套同步、一套异步的API, 建议我们使用异步编程,事件与回调

单线程容易阻塞服务器,通过异步操作(process) 开启多线程充分利用服务器的性能

npm介绍

npm是nodejs的包管理工具,可以用来下载第三方包(模块)

由于npm服务器在美国,国内由于“墙”的原因,国内访问缓慢

然后有了个cnpm(淘宝镜像,)是一个完整npmjs.org镜像,你可以用此代替官方版本(只读),同步频率目前为10分钟- -次以保证尽量与官方服务同步。

cnpm与npm的不同点

<u>cnpm具备除了publish及unpublish npm的所有功能</u>

安装

  npm install cnpm -g 
  npn config set registry https:// registry .npm. taobao .org

npm常用命令

npm adduser 登陆
npm clear cache 清除缓存
npm clean cache 清除缓存
npm config set <key> <value>
npm config get <key>
npm -h
npm --help 查看帮助

package 代表包的名称
-g 全局安装
-d 当前路径安装
--save 向包管理文件添加生产环境依赖
--save- dev 向包管理文件添加开发环境依赖
npm install <package> -g 安装
npm uninstall <package> -g 卸载

npm publish 发布
npm unpublish 取消发布

npm init 初始化项目
npm owner 一个包的作者
npm whoami 用户名
npm -V 查看版本号
npm run <> 执行包管理文件的某条命令
npm start  启动默认命令简写,npm run start
npm init 生成个包管理文件
npm i 等同于npm install

发布包的流程

package.json是一个包管理文件

{
        //项目名称
        //1.不能有空格、汉字\,并且不能与npmjs. org育网的包重名
        "name": "nodejs",
        //项目版本号
        // v3,2.1
        // 3大版本我们的代码、ui界面有颠覆性的改变
        // 2小版本新增功能,修复bug
        // 1修复bug.缺陷提升用户体验
        "version": "1.0.0",
        //项目描述,包含一些关键字、功能描述
        "description": "my first nodejs project",
        //入口文件
        "main": "index. js",
        //快捷启动命令
        "scripts": {
            "test": "echo \"Error: no test specified\" && exit 1"
        },
         //项目要发行的时候需要的证书,平时玩玩忽略它
        "license": "MIT",
        // 包代码存放的地方的类型,可以是 git 或 svn,git 可在 Github 上
        "repository": {
                "type": "git",
                "url": "git+https://github.com/strongloop/express.git"
        },
        //项目的关键字,用于seo优化
        "keywords": [
            "nodejs",
            "express",
            "mysq1"
        ],
        //包的其他贡献者姓名。
        "contributors": [{
            "name": "Aaron Heckmann",
            "email": "aaron.heckmann+github@gmail.com"
        }, ],
        //作者
        "author": "sq",
        //版权信息
        "icense": "ISC",
        //生产环境依赖模块
        "dependencies": 0,
        //开发环境依赖模块
        "devDependencies": 0
    }

npm login

  • username 用户名
  • password 密码
  • email 邮箱
上一篇 下一篇

猜你喜欢

热点阅读