nodejs模块介绍与使用
1、内置模块
http fs path url os等等 (无需安装直接require引入即可)
2、第三方模块:
express mysql ejs等等 (npm包管理工具下载require引入)
npm install 模块(-s)本地安装
npm install 模块 -g 全局安装
npm uninstall express 卸载模块
卸载后,你可以到 /node_modules/ 目录下查看,
或者使用npm ls查看:
npm search express(搜索模块)
npm update express(更新模块)
npm i express@3.0(指定版本)
--版本号
使用NPM下载和发布代码时都会接触到版本号。NPM使用语义版本号来管理代码,这里简单介绍一下。
语义版本号分为X.Y.Z三位,分别代表主版本号、次版本号和补丁版本号。当代码变更时,版本号按以下原则更新。
如果只是修复bug,需要更新Z位。
如果是新增了功能,但是向下兼容,需要更新Y位。
如果有大变动,向下不兼容,需要更新X位。
---项目中需要用到第三方模块
1、npm init (初始化项目 生成package.json)
2、npm install 模块 (下载模块)
3、eg:npm install gulp --save-dev(开发环境依赖;上线压缩时会忽略)
指定版本
eg:npm i express@3.0
多个模块
eg:npm i ejs fs express --s
--转移项目时:
不需要nodemodule文件夹,package.json已经记录
运行npm install时会自动安装(下载生产和开发环境所有依赖)
npm install --production(只下载生产环境的即--save--dev所安装的,忽略开发环境的模块)
--模块化规范:自定义模块
3、vscode终端集成的cmd终端
再文件上右键点击打开终端/ctrl+~ (显示/隐藏)
上下键 选择回滚命令
--http-server
:快速开启一个http服务
通过npm i http-server -g安装服务
文件夹内命令行http-server快速启动一个http服务(默认打开index文件,没有则是返回所有文件)
4、模块简列
--fs模块
//var fs = require("fs");
// 读取文件内容
// fs.readFile("test.html",(err,data)=>{
// if(!err){
// console.log(data.toString());
// }
// });
// 创建/修改
// fs.writeFile("test1.html","123456415",err=>{
// })
// // 重命名
// fs.rename("test1.html","list.html",err=>{
// })
// // 删除文件
// fs.unlink("list.html",err=>{
// })
// 文件是否存在
// fs.exists("list.html",bool=>{
// if(bool){
// console.log("文件已经存在");
// }else{
// console.log('文件不存在');
// }
// })
// // 创建文件夹
// fs.mkdir("abc/",err=>{
//
// })
// 监听文件变化 (不会立即结束)
// fs.watchFile("test.html",err=>{
// console.log("文件变化了");
// });
// fs.unwatchFile("test.html",err=>{
// console.log("结束监听");
// })
--url模块
//url模块用来切割路径
// var url = require("url");
// var str="http://www.baidu.com:9090/abc?x=5050&y=300";
// var res = url.parse(str,true);//切割路径&参数
// console.log(res);
log信息:Url {
protocol: 'http:',
slashes: true,
auth: null,
host: 'www.baidu.com:9090',
port: '9090',
hostname: 'www.baidu.com',
hash: null,
search: '?x=70709&y=706',
query: [Object: null prototype] { x: '70709', y: '706' },
pathname: '/abc',
path: '/abc?x=70709&y=706',
href: 'http://www.baidu.com:9090/abc?x=70709&y=706' }
nodejs模块介绍与使用的更多相关文章
- Nodejs模块介绍
1.模块系统 require:引入模块,返回一个对象 module:指代当前的模块对象 module.exports:当前模块的导出对象 exports:指代module.exports __file ...
- NodeJS 模块开发及发布详解
NodeJS 是一门年轻的语言,扩展模块并不太全,经常我们想用某个模块但是却找不到合适的.比如前两天我需要使用hmac和sha1来做签名,就没有找到一个比较好用的模块,这时候就需要我们自己来实现相应的 ...
- [Node.js与数据库]node-mysql 模块介绍
[Node.js与数据库]node-mysql 模块介绍 转载至:https://itbilu.com/nodejs/npm/NyPG8LhlW.html#multiple-statement-q ...
- webkit模块介绍
一.Webkit模块 用到的第三方库如下: cairo 一个2D绘图库 casqt Unicode处理用的库,从QT中抽取部分代码形成的 expat 一个XML SAX解析器的库 freety ...
- 【液晶模块系列基础视频】1.2.iM_RGB模块介绍
[液晶模块系列基础视频]1.2.iM_RGB模块介绍(上) [液晶模块系列基础视频]1.2.iM_RGB模块介绍(下) ============================== 技术论坛:http ...
- 【液晶模块系列基础视频】1.1.iHMI43模块介绍
[液晶模块系列基础视频]1.1.iHMI43模块介绍(上) [液晶模块系列基础视频]1.1.iHMI43模块介绍(下) ============================== 技术论坛:http ...
- CSS3_概述、发展史、模块介绍、与浏览器之间的关系
一.CSS3概述和CSS3的发展史: 1.css3概述: CSS3是CSS2的升级版本,3只是版本号,它在CSS2.1的基础上增加了很多强大的新功能. 目前主流浏览器chrome.safari. ...
- NodeJS模块、包、NPM
1.NodeJS模块 每一个Nodejs都是一个NodeJS模块,包括JS文件,JSON文本文件,二进制模块文件. a.模块的应用 新建一个文件mytest. ...
- 嵌入式系统图形库GUI核心模块介绍
本文转载自:http://blog.csdn.net/xteda/article/details/6575278 (作者 冯青华 信庭嵌入式工作室(www.xteda.com)- CEO Blog:h ...
随机推荐
- C++ FAQ
空类 class A { }; // sizeof(A) = 1 空类的大小之所以为1,因为标准规定完整对象的大小>0,否则两个不同对象可能拥有相同的地址,故编译器会生成1B占位符. 那么两个对 ...
- 题目分享C 二代目
题意:一个数列是由 1 1 2 1 2 3 1 2 3 4 1 2 3 4 5 1 2 3 4 5 6.....组成,也就是1-1,1-2,1-3......并且如果遇到多位数也要拆成数字比如1-10 ...
- visibility: hidden 和 display: none的区别
相同点: 两者都可以将dom元素隐藏 不同点: 1.display: none 隐藏之后不占用文档流,而visibility: hidden却会占用文档流,如果要在隐藏元素的同时获取其尺寸信息,那就可 ...
- Java——Spring整合Mybatis(IDEA版)
本文适用于初学者: 该文主要教大家如何整合spring和mybatis,整合完成效果,可以从数据库中查询出学生信息: 完整的工程目录如下: 整合思路: 需要spring来管理数据源信息. 需要spri ...
- Edge Weight Assignment(树-异或-贪心)
大意: 给定一棵无根树,要求你任意设置n-1条边的边权. 使得任意叶子节点间边权的XOR值为0: 此时,令f为所有边权数值不同的个数,求最小的f和最大的f. \(\color{Red}{------- ...
- E. Kamil and Making a Stream 区间gcd
E. Kamil and Making a Stream 这个题目要用到一个结论,就是区间一个区间长度为n的不同的gcd不会超过logn 个, 其实就是知道这个题目可以暴力就好了. 然后就是对于每一个 ...
- CSS的基础使用
一,css是什么? CSS全称为“层叠样式表” ,与HTML相辅相成,实现网页的排版布局与样式美化 二,CSS使用方式 1.行内样式/内联样式(单一页面中使用) 借助于style标签属性,为当前的标签 ...
- LTE无线网络优化简介
LTE无线网络优化特点 覆盖和质量的估计参数不同 TD-LTE使用RSPP.RSRQ.SINR进行覆盖和质量的评估. 影响覆盖问题的因素不同 工作频段的不同,导致覆盖范围的差异显著:需要考虑天线模式对 ...
- SpringCloudStream学习(四)TTL(存活时间)Dead Letter Exchanges(死信交换机)
TTL(Time-To-Live and Expiration): RabbitMQ既能对队列设置TTL也能对消息设置TTL,消息TTL可以应用于单个队列.一组队列或应用于逐个消息. 如何给消息设置T ...
- 【Spark】必须要用CDH版本的Spark?那你是不是需要重新编译?
目录 为什么要重新编译? 步骤 一.下载Spark的源码 二.准备linux环境,安装必须软件 三.解压spark源码,修改配置,准备编译 四.开始编译 为什么要重新编译? 由于我们所有的环境统一使用 ...