Node.js使用了Common.js规范
Node.js中Common.js规范有三种使用类型:
//内置模块很多,我们下面以 磁盘处理的模块 为例
//内置模块注重模块的使用,直接用就行了
//1.先引入模块,然后用一个变量保存
var path=require('path');//内置模块在require里直接写模块名称
console.log(path)
//2.使用模块上的api,就是方法,有很多,学几个常用的方法 path.join path.resolve
console.log(__dirname);
//path.join path.resolve ,将一个目录的名称拼接到磁盘路径上,用处极其相似
var pathre=path.resolve(__dirname,'./static');
var pathjo=path.join(__dirname,'../static');
console.log(pathre);
console.log(pathjo);
var process=require('process');//process是进程管理模块,记录整个项目的运行情况
console.log(process)
var url=require('url');
var urlStr='http://www.baidu.com';
var urlObj=url.parse(urlStr);
console.log(urlObj);
console.log(url.format(urlObj));
var str='http://localhost:8080/home/b';
console.log(url.resolve(str,'../d'));
console.log(url.resolve(str,'d'));
前端的第三方模块基本都存放在 http://npmjs.com
npmjs.com中会第三方包的 文档 就在这里
以一个 request 的一个模块来进行研究
需要一个package.json的文件来记录我们安装过的模块
package.json 文件的创建
npm init 一步一步进行
快速创建 npm init -y / cnpm init -y / yarn init -y
命令安装的环境区分
cnpm i request --save 生产环境安装
简写: cnpm i request -S
生产环境安装在package.json中记录在 dependencies 中
cnpm i request --save-dev 开发环境安装
简写: cnpm i request -D
开发环境安装在 package.json中记录在 depenDencies 中
后端 不存在跨域问题, 后端是不依靠浏览器,
第三方的包使用步骤:
1. 引用 ( 第三方包如果使用了模块化安装, require( 模块名称 ) )
2. 使用:
举例: request是用来数据请求的 : 接下来我们去请求一下拉勾的数据
//第三方模块需要下载下来,前端的第三方模块基本都存放在npmjs.com中
//npmjs.com中 第三方包的文档就在这里面
//需要掌握文档阅读能力
//以request模块为例
//1.先安装第三方包,需要一个文件用来记录,就是用package,json来记录我们安装过的模块,
//1.1先把package.json造出来 快速安装:`$ npm init -y`
//开发环境:正在做;生产环境:已经做成成品了,直接用
//1.2安装request `$ npm i request -S`,装出来的是小写的,生产环境
//node_modules不能手动删除,需要用命令`$ rm -rf node_modules/`
//2.使用第三方包
//2.1引用(第三方包如果使用了模块化安装,require里面直接写模块名称)
//request是用来做数据请求的,后端不存在跨域,因为后端是不依靠浏览器的,跨域只存在于浏览器
var request = require('request');
var http = require('http');
http.createServer(function (req, res) {
//request(url,function(error,response,body){})
request('https://m.lagou.com/listmore.json', function (error, response, body) {
if (error) throw error//es6中,一行的时候可以省略大括号
//console.log(response);//请求的接口的信息
//console.log(body)//请求的数据
res.write(body);
res.end();
})
}).listen(8001)
自定义模块:
1. 先定义一个 变量, 变量值可以随意
2. 导出模块
module.exports = 变量名
module.exports = {
变量名
}
3. 导入
如果是第一种方式导出 , var 变量名 = require( 相对路径 )
如果是第二种方式导出, var { 变量名 } = require ( 相对路径 )
//自定义模块,
//1先定义一个变量,变量值可以随意,
//2.导出模块 module.exports=变量名 或者 module.exports={变量名}
//3.导入
//如果是第一种方式导出, var 变量名=require(相对路径)
//如果是第二种方式导出, var {变量名}=require(相对路径)
//导入
var {name}=require('./name.js')
var student={
id:'1',
name:'zhangsan'
}
console.log(name)
//导出
//module.exports=student;
//安全导出
module.exports={
student,
name
}
创建package.json
在 http://npmjs.com 上注册账号
激活账号( npmjs.com会发送一个邮件给你的注册邮箱 )
使用命令登录npmjs.com ( 登录前将你的源从淘宝源 切到 npmjs)
$ nrm use npm
$ nrm ls
$ npm i nrm -g
$ npm adduser
如果登录成功, 提示为: Logged in as ‘你的用户名’ on https://registry.npmjs.org/.
发布包到npmjs
$ npm publish
在npmjs官网查看包有没有发送上去
下载包来使用一下
$ npm i 包名称 -S / -D