【黑马程序员】Node前后端交互,包含项目实战
多喝開水やよ:
【转载自用户12046444163_bili】
p01-p14 node基础
p15-p24 Gulp、模块、包
p25-p35 服务器
p36-p43 Node.js异步编程
p45-p65 MongoDB数据库
p66-p79 模板引擎artTemplate
p80-p94 Express框架
Supery汪汪:
P32 url.parse() 在nodejs 11.0以后弃用, 可以使用下面的方法获取url后面拼接的参数。
const querystring = require('querystring');
querysting.parse(req.url.split('?')【1】); //querystring.parse() 可以解析url字符串转换成object类型
官方文档地址:
nodejs url模块说明:http://nodejs.cn/api/url.html#url_url
nodejs querystring模块用法:http://nodejs.cn/api/querystring.html#querystring_querystring_parse_str_sep_eq_options
王元肉:
18年的东西,有蛮多的改了这是node3的,现在已经升级了
躲丨后看不见:
关于50集中,mongoimport命令不能生效的同学
先去官网下载https://www.mongodb.com/download-center#community MongoDB Database Tools 这个工具
再将工具解压,bin文件夹内所有文件复制到 本机的MongoDB\Server\4.4\bin内
再根据老师视频所说的,设置环境变量,即可!
Supery汪汪:
P41-44 Promise优化
const fs = require('fs');
//* promise链式调用
myReadFile('./1.txt')
.then((value) => {
console.log(value);
return myReadFile('./2.txt');
})
.then((value) => {
console.log(value);
return myReadFile('./3.txt');
})
.then((value) => {
console.log(value);
})
.catch((err) => {
console.log(err);
});
//* async 优化
(async () => {
try {
const value1 = await myReadFile('./1.txt');
console.log(value1);
const value2 = await myReadFile('./2.txt');
console.log(value2);
const value3 = await myReadFile('./3.txt');
console.log(value3);
} catch (error) {
console.log(error);
}
})();
//* readFile 封装
function myReadFile(fileName) {
return new Promise((resolve, reject) => {
fs.readFile(fileName, 'utf-8', (err, data) => {
if (err) reject(err);
resolve(data);
});
});
}
要随心啊:
querystring.parse弃用了
有什么方法可以代替吗
子鱼子鱼呀:
老师讲的很细,适合小白学习,只是node版本相对于现在来说有点太低了,新手点进来的话需要耐心点学习了
苗呀苗呀xx:
// 搭建网站服务器,实现客户端与服务器端的通信
// 连接数据库,创建用户集合,向集合插入文档
// 当用户访问/list时,将所有的用户信息查询出来
// 实现路由功能
// 呈现用户列表页面
// 从数据库中查询用户信息,将用户信息展示在列表中
// 将用户信息和表格HTML进行拼接并将拼接结果响应回客户端
// 当用户访问/add时,呈现表单页面,并实现添加用户信息功能
// 当用户访问/modify时,呈现修改页面,并实现修改用户信息功能
// 当用户访问/delete,实现用户删除功能
自言自语的良多:
P32 url.parse()替代:
const data = new URL(`${req.url}`, 'http://localhost:3000/');
const name = data.searchParams.get('name');
const age = data.searchParams.get('age');
console.log(`姓名:${name},年龄:${age}`);
陈以6呀:
学完了 感谢up主[给心心][给心心][给心心]
离岸金融市场:
node.js 部分笔记(p1~p94):https://blog.csdn.net/weixin_55935744/article/details/120605775?utm_source=app&app_version=4.16.0&code=app_1562916241&uLinkId=usr1mkqgl919blen
ComerHans:
对比了播放量第一的黑马Node.js,发现还是这个更适合我这样的小白。首先视频音质好,其次知识点原委讲得清楚,不像那个视频听完一头雾水,让我一度怀疑自己。
ho在这:
day3那里案例的query属性弃用了,用啥方法替代啊[捂脸]
100KCAL:
P20
最后面的:
gulp.task('default', 【'jsmin', 'copy'】);
这么写报错:
类型“string【】”的参数不能赋给类型“TaskFunction”的参数。
类型“string【】”提供的内容与签名“(done: TaskCallback): void | EventEmitter | ChildProcess | Stream | Observable<any> | PromiseLike<any>”不匹配。ts(2345)
100KCAL:
比官方的完整,官方的把这一坨分成了两份。
全幼儿园最爱学习的仔:
这个老师讲的真不错,赞!![给心心][给心心][给心心]