node

node

node

  • node 使用 C++  开发   借助谷歌的 V8 引擎
  • 传统浏览器引擎都是把 js 转换为字节码再解析到浏览器
  • 而 V8 引擎直接可以把 js 翻译成二进制代码。直接吊打其他浏览器

终端中  node test.js 可直接执行 js 代码

可以执行 node 命令

1.服务器端的 js 解析器

2,npm node package management,nodejs 内置的软件包管理器。

nodejs

就是 js 代码

前端:以前 js 是在浏览器中解析的,浏览器端的脚本语言。

后端:服务器上解析

后端语言

**   ** java

php

nodejs

为什么选 nodejs

优点、

1.免费

2.性能高,执行速度快

3.学习快

nodejs 采用的 ECMA 核心语法,

bom+dom 是浏览器的代码,nodejs 是服务器端使用的代码。

怎么使用

cmd 中   node -v 检查版本

找到当前文件夹

1.写盘符 d:

2.cd 绝对路径

3.cd .. 上级目录

4.cd 本级目录

5.在当前文件夹下 win7 shift+右键 选择 在此处打开命令。

服务器端执行 js 安装 node 之后,执行 node 文件名 tab 可以补齐

webstrom 如果不成功,打开 edit configuration,配置 node 的路径

命令窗口 终端操作

切换盘符   盘符: d:

查看当前文件夹下所有文件 dir

清屏 cls

express nodejs 框架

创建一个新的目录,在新的目录下,打开 node

1.执行 npm init -y

得到一个文件 package.json : 项目工程文件,记录项目所有的东西。

有 package.json,用 npm install 就可以把依赖模块都可以安装上,就是解决依赖。

2.npm install express –save-dev

得到 node_module 文件夹,放所有的模快文件。

–save-dev  dev 开发环境 在开发环境保存,有写只在开发环境用,线上环境不用,比如打包软件之内的。(-D 也可以

创建服务

1
2
3
4
5
6
var express = require("express");
var server = express();

//配置静态页面得访问路径
server.use(express.static(__dirname + "/public"));
server.listen(1234); //创建监听得端口号

**    **

需要在 nodejs 的同级目录创建 public 文件夹,里面需要有 index

**    **

安装数据库

** **   npm install mysql

router 路由 处理请求的

mvc 模式

**   **model 模块 处理数据的

view 视图

controller 控制器   业务处理


nodejs 没有 bom+dom

安装  rpm install 名字 –save-dev(开发环境保持)

引入  require(“名字”) package.json 中可以找到

使用  server.use  或直接调用框架方法

get 请求处理

1
2
3
server.get("/login", function (req, res) {
req.query;
});

post 请求处理

1
2
3
4
5
6
var bodyParser = require("body-parser");
server.use(bodyParser.urlencoded({ extended: true }));
server.use(bodyParser.json());
server.post("/login", function (req, res) {
req.body;
});

router  动态路由

指路,告诉服务器到哪里去执行路由数据的获取

1
2
3
4
var xxRouter = require("./././xxRouter");
// 还是的先调用 express框架
var express = require("express");
var myRouter = express.Router();

r+mvc

r 指路,告诉服务器到哪里去执行路由数据的获取

m model /数据层   链接数据库,执行 sql

v view  视图层

c controller  控制层   处理业务   把路由的数据传给 model,model 返回结果,通过返回的结果写业务。

模块化开发的好处

开发中分工明确,相互独立

可以只暴露想暴露出来的数据


本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!