node.js安装使用
- 环境:nodejs+web服务器+数据库
- 版本:Vx(主).x(子).x(修正)
- 主版本:1/3API发生变化,使用方式变化
- 子:API没有删减,使用方式没变化,内部实现发生变化
- 修正版:什么都没变,处理一下bug
使用
- 编写
IDE: webstrom hb
编辑器:sublime
命令行环境下,运行node命令行 运行
命令行:dos命令行/linux命令行(git)/node命令行 node 文件名
命令行环境下,输入node 回车注意:不支持dom/BOM ECMA支持
需要nodejs提供:数据服务,文件服务,web服务
- 编写
web服务器
web服务器:apache/ngnix/tomact
数据库服务器:sqlserver/mysql/mongoDB/oracle
后台管理:php/java/nodejs
流程
- nodejs不渲染(大前端)
用户-》地址栏(http[s]请求)-》web服务器(收到)-》nodejs处理请求(返回静态、动态)-》请求数据库服务(返回结果)-》nodejs(接收)-》返回前端渲染页面-》浏览器最终渲染 - nodejs渲染(大后端)
用户-》地址栏(http[s]请求)-》web服务器(收到)-》nodejs处理请求(返回静态、动态)-》请求数据库服务(返回结果)-》nodejs(接收)-》渲染页面-》浏览器(接收页面,完成最终渲染)
- nodejs不渲染(大前端)
nodejs手动搭建web服务器
- 引入http模块 require
- server/app =http.createServer
模块化
- 系统模块
http/fs/querystring/url - 元素
- require引入模块、输入(后缀.js可不加)
- 不指定路径
先找系统模块,再找node_modules(依赖模块) - 指定路径
指定./xx/模块名
exports导出、输出
- 不指定路径
- module模块
- moudle.exports==exports
- moudle.exports={
自定义属性:值;
}
- require引入模块、输入(后缀.js可不加)
- commonJS是node默认模块方式
commonJS是个规范
nodejs/webpack是实现 系统模块引入/自定义模块引入
- require(‘’)//引入系统模块
- 可在项目中添加node_modules文件夹
- 在node_modulss中写入的模块在外面引入可以不加./
权重:系统模块>node_modules>自定义模块
- require(‘./….’)引入自定义模块
- 对象简写 12345678910111213let a = 123;let b = abc;let c = function(){truea:a,trueb:b,truec:ctrue}//简写为let a = 123;let b = abc;let c = function(){truea,b,ctrue}
- require(‘’)//引入系统模块
nodejs支持ES6语法,但是不支持es6模块化管理,支持commonJS模块化管理