这是我参与[第四届青训营]笔记创作活动的第五天,今天我学习并总结了一些关于Node.js方面的知识点,主要内容包括Node.js概念、Node.js的优点、Node.js运行时的结构以及我在学习过程中遇到的一些报错及解决办法。
1.什么是Node.js
node是一个基于Chrome V8引擎的javascript运行环境,是运行在服务器端的javascript可以使用node搭建服务器,连接数据库。让前端开发人员走向后端开发。Node.js使用了一个事件驱动、非阻塞I/O口,使其轻量且高效。Node的包管理工具npm,是全球最大的开源库生态系统。
2.Node.js的优点有哪些
- 学习曲线平缓,开发效率较高
- 运行效率接近常见的编译语言
- 社区生态丰富及工具链成熟(npm, V8 inspector)
- 与前端结合的场景会有优势(SSR)
- 现状:竞争激烈,Node.js 有自己独特的优势
3.Node.js运行时结构
带来的特点:异步I/O,单线程,跨平台
4.Node.js安装
- 点击链接nodejs.org/en/download…,下载合适版本的Node.js。
- 选安装目录进行安装
- 环境配置
- 测试
- 阿里镜像cnpm使用 安装之后,在控制台输入node -v出现版本号,说明node.js安装成功了,输入npm -v出现版本号,说明npm安装成功了,npm在安装node的时候会自动安装,并不需要自己特意去下载安装。
5.我在学习Node.js中遇到的一些报错及解决办法
Failed to lookup view "./public/html/yemian.html" in views directory
原因:在view里面查找视图文件"./public/html/yemian.html"失败
nodejs需要把页面的html保存在一个名为views的文件里,注意,这个view文件夹与public同级,在项目文件夹之下,不要把它写到public里面。
router is not defind
router使用错误
router使用方法:
以下是写在app.js文件里的,即需要node的那个文件
const express = require('express') ;
const app = express();
let fs = require('fs')
let router = require('./router')
app.use( router )
以下可以新建一个router.js存放,主要是保存有关路由的相关操作
let express = require('express')
let fs = require('fs')
let Cooks = require('./cooks')
let Orders = require('./orders')
let Staffs = require('./staffs')
let router = express.Router(); //创建一个路由容器
接下来就可以用router.get或者router.post来写功能了