关于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. PAT 1044. Shopping in Mars

    #include <cstdio> #include <cstdlib> #include <vector> #include <climits> #i ...

  2. 纪念一个神坑——react-native-echarts

    一.问题 在rn项目里引用的时候,本该显示图表的界面显示出了一堆html... 二.原因 官方没给配置好 三.解决 1./node_modules/native-echarts/src/compone ...

  3. csharp: Getting all image files in folder

    /// <summary> /// /// </summary> /// <param name="sender"></param> ...

  4. SQL Server UDF to pad a string

    http://www.mssqltips.com/sqlservertip/1738/sql-server-udf-to-pad-a-string/ declare @l varchar(50) se ...

  5. IE8 td元素 width无效的bug;

    不经意间做项目发现IE的td在某种情况下好奇怪,自己设置的width不起作用: 后经google大法,发现解决方案:已验证过完美解决bug; <table style="width:  ...

  6. 关于webuploader 在ie9上不能触发 input 的 change 事件

    上传文件用了 webuploader,ie9以上及其它浏览器正常执行js ,但是在ie9上点击input 无效,不能触发change 事件. 第一反应是ie9 需要使用flash 上传文件 原因: . ...

  7. 01_Jdk自带SPI

    [SPI的设计目标] 面向对象的设计里,模块之间是基于接口编程,模块之间不对实现类进行硬编码. 一旦代码里设计具体的实现类,就违法了可插拔的原则,如果需要替代一种实现,就要修改代码. 为了实现在模块装 ...

  8. 微信jssdk 返回的 config invalid signature

    这几天一直在调试wxjssdk,按照api的需求,http://mp.weixin.qq.com/wiki/7/aaa137b55fb2e0456bf8dd9148dd613f.html ,先是根据a ...

  9. SQL Server ->> Database Snapshot(数据块快照)

    Comming soon!!! 参考文献: View the Size of the Sparse File of a Database Snapshot 数据库快照 (SQL Server) 创建数 ...

  10. Oracle案例02——ORA-12034: "SCOTT"."USER_TABLE" 上的实体化视图日志比上次刷新后的内容新

    最近同事在交接工作时,发现有几个schedule job没有执行成功,我这边给看了下,其中一个是由于数据库迁移,调用dblink的host主机IP在tnsnames中没有变更导致,还有一个是无法视图的 ...