node学习中一些知识点的整理
1、express的使用
1.简介
express是 node 的一个快速、开放和轻量级的 web框架
2.安装
npm install express
3.简单使用
const express = require('express') //导入express包
const app = express() //获取express对象
app.get('/', function (req, res) { //调用get方法
res.send('Hello World')
})
app.listen(3000) //设置监听的端口号
结果:
当我们访问 localhost:3000/ 时,得到 Hello World 的回复!
2、nodemon的使用
1.简介
- nodemon是一种工具,可在检测到目录中的文件更改时通过自动重新启动节点应用程序来帮助开发基于 node.js的应用程序。
- nodemon不需要对您的代码或开发方法进行任何其他更改。 nodemon是node的替换包装。
2.安装
建议全局安装,如下:
npm install -g nodemon
3.使用
要使用nodemon,请在执行脚本时在命令行上替换单词node。
3、关于package.json和package-lock.json
1.package.json
- 初始化
npm init -y
时,会自动生成 - 用于保存你安装的依赖包,
npm install
即可下载你所有的依赖包 - 当你安装包时加上
--save
即会保存到package.json文件,如:npm install express --save(npm5.0版本以后不用加–save也会自动保存)
2.package-lock.json
- npm5.0 版本后才有此文件
- 此文件保存着依赖包的各种信息,因此,有了这个文件
npm install
速度更快 - 此文件会锁定package.json中依赖包的版本,这样可以防止包更新对项目的影响
4、express中使用art-template模板引擎
1.简介
- art-template 是一个简约、超快的模板引擎。
- 它采用作用域预声明的技术来优化模板渲染速度,从而获得接近 JavaScript 极限的运行性能,并且同时支持 NodeJS 和浏览器。
2.安装
express-art-template这个包是专门用来在 Express 中把 art-template 整合到 Express 中,而express-art-template 依赖了 art-template 所以要安装两个包
npm install --save art-template
npm install --save express-art-template
3.简单使用
var express = require('express')
//1.创建app
var app = express()
app.engine('art', require('express-art-template'))
//Express 为 response 相应对象提供了一个方法:render
//render 方法默认是不可以使用,但是如果配置了模板引擎就可以使用了
//res.render('html模板名',{模板数据})
//第一个参数不能写路径,默认会去项目中 views 目录查找该模板文件
//也就是说 Express 有一个约定:开发人员把所有的视图文件都放到 views 文件中
// routes
app.get('/', function (req, res) {
res.render('index.art', {
user: {
name: 'aui',
}
});
});
app.listen(3000,function(){
console.log('express is running...')
})
views中的index.art
art文件和HTML文件都是可以被模板引擎渲染的,只是后缀名不同,如果不想以art作为后缀,可以做如下操作,
改为html
index.art文件
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>答案</title>
</head>
<body>
<h1>你好!{{user.name}}</h1>
</body>
</html>
结果:
5、express静态资源管理
第一种方法
//当以 /public/ 开头的时候,去 ./public/ 目录中找找对应的资源
app.use('/public/',express.static('./public/'))
第二中方法
//当只有第二个参数时,不用写public来访问,直接写public下的路径即可
app.use(express.static('./public/'))
6、node连接mysql
1.安装包
npm install mysql
2.简单例子
var mysql = require('mysql');
var connection = mysql.createConnection({
host : 'localhost',
user : 'me',
password : 'secret',
database : 'my_db'
});
connection.connect();
connection.query('SELECT 1 + 1 AS solution', function (error, results, fields) {
if (error) throw error;
console.log('The solution is: ', results[0].solution);
});
connection.end();
参考链接:
- http://expressjs.com/en/starter/static-files.html
- https://aui.github.io/art-template/express/
- https://www.npmjs.com/package/express
- https://www.npmjs.com/package/mysql