关于NPM:

npm 是 nodejs 的包管理和分发工具。它可以让 javascript 开发者能够更加轻松的共享代码和共用代码片段,并且通过 npm 管理你分享的代码也很方便快捷和简单。

一 NodeJs安装与NPM管理

安装

前往NodeJs官网,下载安装包直接安装。同时NodeJs默认包含NPM模块。后者需要更新到最新版本。-v 查看版本信息,有则安装成功。某些版本不支持读-v参数大小写敏感,如报错尝试大写-V.

node -v
v4.4.4
npm -v
2.15.1

更新npm模块

node install npm -g

-g 参数代表全局安装,windows下所有安装的模块文件一般存放在node安装目录下或C:\Users\Administrator\AppData\Roaming缓存目录下。

去掉-g 本地安装,npm在当前目录下新建一个node_modules目录,所下载的模块存放在里面。

卸载

通过uninstall从node_modules目录下删除模块

#本地卸载
npm uninstall <name>
#全局卸载
npm uninstall <name> -g

二 创建第一个NodeJs应用

使用express模块创建应用。

首先下载express模块

npm install -g express
express -V

同理,检查是否安装成功。还有两个参数:-e或--ejs;-J或--jshtml。含义:

-e, --ejs add ejs engine support 添加ejs模块引擎支撑

-J, --jshtml add jshtml engine support (defaults to jade) 添加jshtml模板引擎支撑

新版本express中不支持cmd命令行,所以上面express -V会报错: 不是内部或外部命令,需下载express-generator

npm install -g express-generator

然后可以全局使用express命令了,随便选择一个文件夹(F:\Project\Nodejs)下创建应用:

express hello_world

cd hello_world 进入项目

cd hello_world
# 查看目录结构
dir
#像这样
# 2016/06/26 14:43 <DIR> .
# 2016/06/26 14:43 <DIR> ..
# 2016/06/26 01:41 1,442 app.js
# 2016/06/26 01:41 <DIR> bin
# 2016/06/26 01:41 331 package.json
# 2016/06/26 01:41 <DIR> public
# 2016/06/26 01:41 <DIR> routes
# 2016/06/26 01:41 <DIR> views
# 2 个文件 1,773 字节
# 6 个目录 161,019,293,696 可用字节*

注意这里有一个package.json文件,里面dependencies属性指定了当前项目依赖的模块。启动之前,需要执行npm install下载他们:

npm install

如果没有package.json文件,这一步会报错:

npm ERR! install Couldn't read dependencies

npm ERR! Windows_NT 6.1.7601

可以通过npm ini 生成默认的。在这里,上面的express hello_world命令内部已经调用该命令,生成文件内容类似这样:

{
"name": "hello_world",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "node ./bin/www"
},
"dependencies": {
"body-parser": "~1.15.1",
"cookie-parser": "~1.4.3",
"debug": "~2.2.0",
"express": "~4.13.4",
"jade": "~1.11.0",
"morgan": "~1.7.0",
"serve-favicon": "~2.3.0"
}
}

也可以安装上面的模板,收到创建该package.json文件。值得一提的是,一个npm模块package.json文件包含的信息远比这里丰富。

等待依赖库下载完成。完成后多一个node_modules文件夹用于保存依赖库。

至此,当前应用准备工作完成。启动应用:

npm start

浏览器中输入127.0.0.1::3000(默认端口)访问

三 总结

个人经验,希望能给从零到创建一个nodeJs应用的同学提供参考。

NodeJs——入门的更多相关文章

  1. nodeJs 5.0.0 安装配置与nodeJs入门例子学习

    新手学习笔记,高手请自动略过 安装可以先看这篇:http://blog.csdn.net/bushizhuanjia/article/details/7915017 1.首先到官网去下载exe,或者m ...

  2. NodeJS入门(四)—— path对象

    很快Node就会迎来4.0的时代,届时将并入现有的iojs,所以先前写过的iojs入门系列直接更名为NodeJS入门. 本篇开始将逐个介绍Node的各主要模块,依循API文档走一遍,但会给出比API文 ...

  3. 01.Nodejs入门之Helloworld

    说明:本文章可供有一定js基础的朋友参考nodejs入门,本文未讲解nodejs的安装,如有需要的同学可以加QQ3382260752找我,进行交流学习. 1.新建文件夹helloworld demo, ...

  4. NodeJS入门简介

    NodeJS入门简介 二.模块 在Node.js中,以模块为单位划分所有功能,并且提供了一个完整的模块加载机制,这时的我们可以将应用程序划分为各个不同的部分. const http = require ...

  5. nodejs入门教程之http的get和request简介及应用

    nodejs入门教程之http的get和request简介及应用 前言 上一篇文章,我介绍了nodejs的几个常用的模块及简单的案例,今天我们再来重点看一下nodejs的http模块,关于http模块 ...

  6. 57.NodeJS入门--环境搭建 IntelliJ IDEA

    转自:https://blog.csdn.net/wang19891106/article/details/51127133 NodeJS入门–环境搭建 IntelliJ IDEA 本人也刚开始学习N ...

  7. 二、NodeJS入门——准备工作(2)——MongoDB安装以及客户端Robomongo安装和使用

    目录     1.介绍     2.下载地址     3.MongoDB安装过程     4.MongoDB的使用     5.MongoDB添加管理员账户     6.RoboMongo安装过程   ...

  8. NodeJS入门--环境搭建 IntelliJ IDEA

    NodeJS入门–环境搭建 IntelliJ IDEA 本人也刚开始学习NodeJS,所以以此做个笔记,欢迎大家提出意见. 1.首先 下载安装NodeJS,下载安装IntelliJ IDEA 2.接下 ...

  9. Nodejs入门-基于Node.js的简单应用

    服务端JavaScript 众所周知的,JavaScript是运行在浏览器的脚本语言,JavaScript通常作为客户端程序设计语言使用,以JavaScript写出的程序常在用户的浏览器上运行.直至N ...

  10. Nodejs入门手记 (01):Hello World的WEB程序

    声明:本文为原创文章,如需转载,请注明来源并保留原文链接Allong,谢谢! “滚滚长江东逝水,浪花淘尽英雄.是非成败转头空.” - <临江仙·杨慎·明> 很熟悉的旋律,鸡汤了一下:高考是 ...

随机推荐

  1. python 需求文件requirements.txt的创建及使用

    在虚拟环境中使用pip生成: (venv) $ pip freeze >requirements.txt 当需要创建这个虚拟环境的完全副本,可以创建一个新的虚拟环境,并在其上运行以下命令: (v ...

  2. 牛顿迭代,多项式求逆,除法,开方,exp,ln,求幂

    牛顿迭代 若 \[G(F_0(x))\equiv 0(mod\ x^{2^t})\] 牛顿迭代 \[F(x)\equiv F_0(x)-\frac{G(F_0(x))}{G'(F_0(x))}(mod ...

  3. redux小结

    1.创建reducers :保存初始化状态. 2.入口文件通过redux 中的 { createStore } 将 reducers保存为快照, 通过react-redux中的{ Provider } ...

  4. c/c++ 按照行读取文件

    本文代码都在Windows/VC++6.0下测试过, 在linux/g++下也没有问题. 但是请一定注意linux和Windows文件格式的区别,比如: 1. 当linux上的代码读取Windows文 ...

  5. mysql 更新sql报错:You can't specify target table 'wms_cabinet_form' for update in FROM clause

    数据库里面有两个字段的位置不对,要把他们对调换下.因为没有数据库写的权限,需要用sql语句来实现.原来以为简单的 update table a set a.字段a=(select b字段 from t ...

  6. [uva] 10067 - Playing with Wheels

    10067 - Playing with Wheels 题目页:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Ite ...

  7. IIS并发连接数限制

  8. GIT团队合作探讨之一-保持工作同步的概念和实践

    感谢英文原文作者,这是我看到的关于git协同工作写的最清晰简洁的文章了: https://www.atlassian.com/git/tutorials/syncing/git-push SVN使用一 ...

  9. 三、安装远程工具xshell,使用SFTP传输文件——Linux学习笔记

    A)远程工具 学Linux没有远程工具怎么行,百度了下,发现了xshell这个东西,重点是可以免费. 链接是多简单啊 输入地址,账号就搞定了. 打命令什么的都搞定了,真的感谢这个时代,求学有路啊! 到 ...

  10. mongoDb 命令

    1.显示MongoDB的服务器统计:db.stats() 2.创建数据库:use dbname 3.删除数据库:db.dropDatabase() 4.检查当前选择的数据库:db 5.检查数据库列表: ...