快速入门node.js(持续更新中)

node -v检测版本
new-cmd  插件
Code Runner 插件

前提条件必须在一个局域网
局域网:
win+r
输入cmd +ipconfig
找到以太网ipv4 192.168.20.129
环境配置:
    1.安装node.js
    2.cmd黑窗口输入 npm i live-server -g
    3.live-server  --host=ip地址 192.168.20.78

Ctrl+c关闭

找文件 zepto-master
找make文件 添加模块zepto event ajax form ie fx touch selector
定制npm run-script dist


------------差什么下载什么------------
解决:
cannot find module "epress"
方法1: cnpm i express -S  //中国的
方法1: npm i express -S
方法2:
    1.删除 node_modules
    2.npm i


------------差什么下载什么/------------

学习 Node.js 可以做什么


- 像 PHP 一样,使用 Javascript 编写符合规范的后端 API 接口 或 网站
- 使用 Node.js 开发一些实用的工具 或 包

- 基于 Socket 技术,开发类似于聊天室之类的即时通讯项目

- 基于 Electron 环境,开发桌面软件

- ect...

-----------------------------------------------------------
1.9.2. 8.2 安装和卸载全局包(i5ting_toc)
什么是全局的包:安装到计算机全局环境中的包,叫做全局包;安装的全局包可以在当前电脑的任何目录下,直接通过命令行来访问;
如何安装全局包:运行 npm install 包名 -g 即可;其中 -g 参数,表示 把包安装到全局目录中的意思;
全局包的安装目录:C:\Users\用户目录\AppData\Roaming\npm
什么样的包适合安装到全局:工具性质的包,适合安装到全局;
如何卸载全局包:要卸载某个全局的包,直接运行npm uninstall 包名 -g即可;其中 uninstall 表示卸载的意思;
    -g 
    -S (局部开发环境)
    -D(局部环境dev测试环境)

1.下载  npm install 包名 -g   (全局)

一:下载: npm i i5ting_toc -g 
二: 转换: npm i i5ting_toc -f 文件目录 -o   (-o下载完毕打开)
三:卸载:npm uninstall 文件目录 -g

2.安装局部包

    1.npm init -y               (初始化包配置文件)
    2.npm install jquery -S     (-S 等价于--save)
    3.npm install               (他会去找当前目录package.json看里面有什么,会帮你下载什么)
    4.npm uninstall 包名 -S   卸载
    5.--sace(-S)
3.解决下载慢问题 cnmp (中国cnmp)
    中国淘宝镜像 http://npm.taobao.org/
    npm install -g cnpm --registry=https://registry.npm.taobao.org

---------------------------------
自动重启服务器
-----------------------------------
npm i nodemon -g
1. 使用 nodemon 工具来自动重启web服务器

- nodemon的作用:能够实时监听当前项目中,文件的变化;只要监听到了文件的变化,则 nodemon 工具,会自动重新启动 web 服务器,从而使最新的代码生效;免去了程序员手动重启服务器的困扰;
- 如何安装:运行 npm i nodemon -g  全局安装即可;
- 如何使用:
  - 之前使用 node 要执行的文件路径 来运行 Node.js 代码;
  - 现在使用 nodemon 要执行的文件路径 来运行 Node.js 代码;
- 注意:今后在开发Web项目的时候,推荐使用 nodemon 来启动 web 服务器

-------------------------------------
express框架的安装
 express 框架的安装和基本使用

1. 安装:运行 npm i express -S 即可安装
2. 创建基本的 express 服务器:
   - 导入 express 第三方模块;
   - 创建服务器的实例:调用 const app = express() 方法;
   - 通过 app.get() 或 app.post() 方法,来监听客户端的 get 或 post 请求,具体语法:
     - 监听 GET 请求:app.get('请求地址', (req, res) => { 处理函数 }) 
     - 监听 POST 请求: app.post('请求地址', (req, res) => { 处理函数 }) 
   - 启动 express 服务器:通过 app.listen(端口, IP地址, 启动成功后的回调函数) 启动服务器;
---------------------------------------------------
 express 中的快捷方法

1. res.send()
   1. 支持 发送 字符串 Content-Type: text/html;
   2. 支持 发送 对象 或 数组 Content-Type: application/json
   3. 支持 发送 Buffer 此时会当作文件下载;
2. res.sendFile()
   - 用法1:res.sendFile(path.join(__dirname, './view/index.html'))
   - 用法2:res.sendFile('./view/movie.html', { root: __dirname })
   - 注意:res.sendFile() 可以向浏览器发送 静态页面;
-------------------------------------------
express.static托管资源

如果我们网站中,有很多静态资源需要被外界访问,此时,使用 res.sendFile 就有点力不从心了;

这时候,express 框架,为我们提供了 express.static('静态资源目录') 

来快速托管指定目录下的所有静态资源文件;

1. 语法1: app.use(express.static('public'));
   - app.use()方法,是专门用来注册 中间件;
   - express.static 是express的内置中间件;
2. 语法2:app.use('/虚拟目录', express.static('public'))

-------------------------------------------
exppress框架配置模板引擎渲染动态页面
1. 安装 ejs 模板引擎npm i ejs -S
2. 使用 app.set() 配置默认的模板引擎 app.set('view engine', 'ejs')
3. 使用 app.set() 配置默认模板页面的存放路径 app.set('views', './views')
4. 使用 res.render() 来渲染模板页面res.render('index.ejs', { 要渲染的数据对象 }),注意,模板页面的 后缀名,可以省略不写!

express框架中提供的路由来分发请求
1.什么是路由:路由就是对应关系
2.什么叫做后端路由:前端请求的URL地址,都要有一个后端对应的函数处理
.这种叫做对应关系,就叫做后端路由
3.在Express中,路由的主要职责 就是 把请求分发到对应的处理函数中;
4.在Express中,如何 定义并使用路由呢?
---------------------------------
-  // 1. 封装单独的 router.js 路由模块文件
  const express = require('express')
  // 创建路由对象
  const router = express.Router()

  router.get('/', (req, res)=>{})
  router.get('/movie', (req, res)=>{})
  router.get('/about', (req, res)=>{})

  // 导出路由对象
  module.exports = router

------------------------------------
5.express 创建的 app 服务器,如何使用 路由模块呢?
-----------------------------------
  // 导入自己的路由模块
  const router = require('./router.js')
  // 使用 app.use() 来注册路由
  app.use(router)
  -----------------------------

猜你喜欢

转载自www.cnblogs.com/tuziling/p/10210534.html
今日推荐